Once again - TLD's are not resolved
I have posted this problem once for build 1050 - now I have to repost it as build 1074 is not working as well with my configuration (it could be I am configuring wrong, though - but I am quite sure I should be right...)
I am using MyFaces (a free JavaServerFaces implementation), and include their jar in my WEB-INF/lib directory and as a lib in the project.
My JSPs include these tlds in the form:
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://myfaces.sourceforge.net/tld/myfaces_ext_0_4.tld" prefix="x"%>
As my web-application (started from the war-file) can correctly resolve these tlds, I would expect IntelliJ to resolve them as well - but all I see are red tags.
I am kind of devastated here ... I would love to have the thing running with just the jar, as the web-application resolves the tags perfectly!
my directory structure:
/web (= web root with a /)
/WEB-INF
web.xml
/lib
myfaces.jar (with tld's in it)
/classes
*.jsp
is there something incorrect with that structure?
Best regards,
Martin
请先登录再写评论。
Yeah, taglibs are broken in 1074 for me again. Moving back to 1071.
I just got taglibs working again in 1074. Seems that my settings kept getting reset, my webapp dir setting lost, the Distributable checkmarks, and a few other things. I finally got the settings to save somehow (maybe by modifying my web.xml path again).
Ian Zabel wrote:
You must have tried to work with a previously created project/module.
New ones created in 1074 from scratch work just fine.
Glad you found it.
R
I'm using 1074 and created a webmodule from scratch. My TLDs also do not work, but there is one interesting thing:
A TLD in a file, that is referenced via web.xml is found. TLDs in the META-INF of a library are not found.
There seems to be a serious bug with children modules and the "distributable" flag (BTW, what's it for?): After applying changes, closing window and open it again, the settings are unchanged or scrambled (some children modules on, some are off).
Perhaps this bug has something to do with TLD problems?
Manfred Geiler wrote:
Not only that if you try it again the library will show up twice, then
try it one more time and the libs are fixed and the settings are
changed. This is already fixed in 1076 I believe.
R
I have this problem also in 1080 -- a TLD referenced in the web.xml (using version 2.4 with xsd) works ok -- hooray! But one referenced in a library (in this case, JSTL using the Apache implementation consisting of jstl.jar and standard.jar) does not resolve properly.
If anyone has a magic incantation to make this happen I'm highly interested.
Chris Winters wrote:
Just curious is that library part of the libraries pane for the module,
and is it checked off as a child in the Web Module tab of the web module
(boy that's confusing)
R
Yes and yes (relative path: '/WEB-INF/lib')-- and both jstl.jar and standard.jar are part of the 'JSTL' library.
I'm not sure if TLDs inside jar files are supported, I never saw an official statement from JetBrains about that yet. I also tried to use Apache's JSTL and had no success, unless I extracted the TLDs from the jar files and stored them explicitely.
TLDs inside jar files WERE supported in idea 3.0.x !
So, IMHO, there is no need for an official statement.
Ok, I wasn't aware of that since I never used it yet. But of course you're right. If it was supported in 3.0.x then it should definitively work in Aurora. Is there already a bug report for it?
Martin Fuhrer wrote:
Well I tried this yesterday, and was not sure what was going on. I have
the c.tld outside the jar too, and can't get it to resolve.
it was a long day, so I gave up and will try again today, but there is
something funky there.
R
Well - a little update:
it seems that some tld's just do not resolve, whether you have them out of a jar, in a jar or whereever....
(that might be additionally to a problem with tld's in jars)
I have filed a bug for that and included several tld's to help debugging... Maybe someone of you can check if the tld's do not resolve with him, too...
Attachment(s):
myfaces_core.tld
myfaces_ext.tld
myfaces_html.tld
Martin Fuhrer wrote:
We support TLDs inside jar files. But for this you have to include them
in deployment (Settings | Paths | Web Module). On the current build it
works fine if addressing via URIs (we checked this on struts). But if
you address tag libs via their jars it fails. This was a bug and it's
fixed now.
IK
--
Igor Kuralenok
Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"
I tried this in 1089 and got the same result. (TLDs found in JARs cannot be referenced via the URI in the 'taglib' JSP declaration.) The JARs are in the Web Module and marked for inclusion under 'Settings | Paths | Web Module'. I even tried splitting out the 'jstl.jar' and 'standard.jar' into separate libraries (e.g., 'JSTL' and 'JSTL Apache'). No good.
I shouldn't need to re-create the module, should I?
I far as I know we've changed format for web modules config in one of
recent builds so please try to reconfigure. Also we had a number of
requests on TLD resolve caused by incorrect namespace inside of taglib
descriptor check this too.
IK
Chris Winters wrote:
--
Igor Kuralenok
Developer
JetBrains Inc.
http://www.jetbrains.com
"Develop with pleasure!"
As far as I know these files does not define a taglib because of incorrect namespace. The only namespace which was announced by Sun is one for JSP 2.0 other versions had DTD definitions only. To relax this condition IDEA accept DTD urls as correct namespaces but no other.
IK
Using 1094 I've just tried re-creating the web module in my project and get the same results -- a TLD declared in the web.xml is properly found and parsed, one referenced by a URI found in a library JAR (included in webapp) is not found.
I'm referencing the taglib in my JSP (in the directory marked as the web root) like this:
]]>
And the 'standard.jar' in my library has:
JSTL 1.1 core library JSTL core 1.1 c http://java.sun.com/jsp/jstl/core ... ]]>
Let me know if I can provide additional information to help out.
We've just included new namespace (2.0 one) to supported list so please wait for 1095+ build.
Thanks,
IK
Thanks!