[jboss-user] [Tomcat, HTTPD, Servlets & JSP] - Custom tag - Jasper compilation error
ybh6336
do-not-reply at jboss.com
Thu Jul 5 10:14:57 EDT 2007
Hello all,
I am trying to use a simple custom tag in my JSP that sets an attribute on the page. This JSP works fine on both WebLogic and WebSphere, but gives the following compilation error on JBoss:
| <org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/].[jsp]> - <Servlet.service() for servlet jsp threw exception>
| org.apache.jasper.JasperException: Unable to compile class for JSP
|
| An error occurred at line: 125 in the jsp file: /test/jsp/testCustomTag.jsp
| Generated servlet error:
| pageVar cannot be resolved
|
| at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
| at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
| at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:414)
| at org.apache.jasper.compiler.Compiler.compile(Compiler.java:297)
| at org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
| at org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
| at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
| at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:305)
| at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
| at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
| ...
| ...
|
The code fragment in the JSP looks as follows:
| <util:myCustomTag
| id="pageVar"
| attr1="<% attr1 %>"
| attr2="<%= attr2 %>"
| attr3="<%= attr3 %>"
| >
|
| <%
| String pageVar2 = pageVar;
| %>
|
And the tag definition in .tld is as follows:
| ...
| ...
| <tag>
| <name>myCustomTag</name>
| <tag-class>com.test.MyCustomTag</tag-class>
| <body-content>JSP</body-content>
| <description>
| Just a test tag
| </description>
| <variable>
| <name-from-attribute>id</name-from-attribute>
| <variable-class>String</variable-class>
| <declare>true</declare>
| <scope>AT_END</scope>
| </variable>
| <attribute>
| <name>id</name>
| <required>true</required>
| <rtexprvalue>false</rtexprvalue>
| </attribute>
| <attribute>
| <name>attr1</name>
| <required>true</required>
| <rtexprvalue>true</rtexprvalue>
| </attribute>
| <attribute>
| <name>attr2</name>
| <required>true</required>
| <rtexprvalue>true</rtexprvalue>
| </attribute>
| <attribute>
| <name>attr3</name>
| <required>true</required>
| <rtexprvalue>true</rtexprvalue>
| </attribute>
| <attribute>
| <name>attr4</name>
| <required>false</required>
| <rtexprvalue>true</rtexprvalue>
| </attribute>
| </tag>
| ...
| ...
|
I enabled 1.5 features by uncommenting the following in deploy\jbossweb-tomcat55.sar\conf\web.xml:
| <init-param>
| <param-name>compilerSourceVM</param-name>
| <param-value>1.5</param-value>
| </init-param>
|
Environment:
- JBoss 4.0.5 GA
- BEA JDK 1.5.0_04
- Windows XP
NOTE - The code fragment above is in a JSP that is an include in another JSP, and <%@ taglib uri="/taglib.tld" prefix="util"%> is declared in the parent JSP. The JSP has been included using the following:
| <%@ include file="/test/jsp/testCustomTag.jsp" %>
|
Is there a JSP specs violation in this code somewhere? I would appreciate any feedback.
Regards.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4060838#4060838
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4060838
More information about the jboss-user
mailing list