[MAGNOLIA-3824] Generated TLDs are invalid Created: 05/Sep/11  Updated: 04/Mar/19  Resolved: 04/Nov/15

Status: Closed
Project: Magnolia
Component/s: build, taglibs
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Neutral
Reporter: Magnolia International Assignee: Magnolia International
Resolution: Won't Do Votes: 0
Labels: jboss, taglib, tld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Date of First Response:

 Description   

We currently can't deploy our webapps as-is with JBoss6, because there's a problem with the TLDs we currently generate:

...
<tlib-version>1.2.3</tlib-version>
...

... is not valid as per the 2.0 taglib xsd which expects a plain decimal for this value, such as "123" (http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd)

It is otoh valid with 2.1, where the version type has been revised: http://java.sun.com/xml/ns/javaee/jsp_2_1.xsd

Fixing XDoclet's web plugin should not be too complicated, but it might not be as easy to get a release out in due time. I'll try to contact the developers...

See:

Another option would to use a different tool: http://code.google.com/p/tld-generator/ for example could be interested. It looks like you just need to drop it in the build-time classpath. It might be a little less flexible (in that it requires the version number to be passed as an annotation parameter, for example), but probably patchable. It also seems to be currently fixed on the jsp 2.1 api.



 Comments   
Comment by Magnolia International [ 06/Sep/11 ]

As a workaround, JBoss can be configured to not validate those files.

Edit <JBOSS_HOME>/server/<yourServer>/deployer/jbossweb.deployer/META-INF/war-deployers-jboss-beans.xml
Set the useSchemaValidation property of the TldParsingDeployer bean to false:

<bean name="TldParsingDeployer" class="org.jboss.deployment.TldParsingDeployer">
<property name="useSchemaValidation">false</property> 
<property name="relativeOrder">2002</property>
</bean>
Comment by Tobias Mattsson [ 03/Dec/13 ]

As of 5.2 we're using JSP 2.1.

Comment by Magnolia International [ 03/Dec/13 ]

... and we don't use XDoclet anymore. This and the above are probably since 5.0, if not 4.5. (can someone chip in ?)

So we should

  • ensure the TLDs we generate now ARE valid
    • they still aren't: the <description> should be first.
    • they now claim tlib-version is 2.1, which ... is not what this element is meant to document, afaik (it should document OUR version, not that of the spec)
  • remove xdoclet configuration from magnolia_main's parent pom.
Comment by Michael Mühlebach [ 04/Nov/15 ]

Given the thousands of other issues we have open that are more highly requested, we won't be able to address this issue in the foreseeable future. Instead we will focus on issues with a higher impact, and more votes.
Thanks for taking the time to raise this issue. As you are no doubt aware this issue has been on our backlog for some time now with very little movement.
I'm going to close this to set expectations so the issue doesn't stay open for years with few updates. If the issue is still relevant please feel free to reopen it or create a new issue.

Generated at Mon Feb 12 03:50:02 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.