Topic
  • 5 replies
  • Latest Post - ‏2012-12-21T15:53:29Z by SystemAdmin
SystemAdmin
SystemAdmin
4447 Posts

Pinned topic JSPG0124E: According to TLD or attribute directive in tag file

‏2012-02-28T05:09:46Z |
Hi,

I am doing WAS upgradation for J2EE application from 2.4 to 2.5.

When I created new web module & trying to run the same ,I am getting following exception

2/28/12 9:48:21:375 IST 00000018 webapp E com.ibm.ws.webcontainer.webapp.WebApp logServletError SRVE0293E: Servlet Error-[/jsp/selection.jsp]: com.ibm.ws.jsp.translator.JspTranslationException: JSPG0227E: Exception caught while translating /jsp/selection.jsp:
/jsp/selection.jsp(68,5) --> JSPG0124E: According to TLD or attribute directive in tag file, attribute "test" does not accept any expressions. Value of expression is: "http://${sessionScope.errMsg == null}".

at com.ibm.ws.jsp.translator.visitor.validator.ValidateVisitor.validateCustomTagAttribute(ValidateVisitor.java:1732)
at com.ibm.ws.jsp.translator.visitor.validator.ValidateVisitor.validateCustomTagAttributeValues(ValidateVisitor.java:1374)
at com.ibm.ws.jsp.translator.visitor.validator.ValidateVisitor.visitCustomTagStart(ValidateVisitor.java:289)
at com.ibm.ws.jsp.translator.visitor.JspVisitor.processJspElement(JspVisitor.java:366)
at com.ibm.ws.jsp.translator.visitor.JspVisitor.processChildren(JspVisitor.java:419)
at com.ibm.ws.jsp.translator.visitor.JspVisitor.processJspElement(JspVisitor.java:234)
at com.ibm.ws.jsp.translator.visitor.JspVisitor.visit(JspVisitor.java:216)
at com.ibm.ws.jsp.translator.JspTranslator.processVisitors(JspTranslator.java:127)
at com.ibm.ws.jsp.translator.utils.JspTranslatorUtil.translateJsp(JspTranslatorUtil.java:239)
at com.ibm.ws.jsp.translator.utils.JspTranslatorUtil.translateJspAndCompile(JspTranslatorUtil.java:109)
at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.translateJsp(AbstractJSPExtensionServletWrapper.java:465)
at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper._checkForTranslation(AbstractJSPExtensionServletWrapper.java:433)
at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.checkForTranslation(AbstractJSPExtensionServletWrapper.java:292)
at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:142)
at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.handleRequest(AbstractJSPExtensionProcessor.java:335)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3610)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:274)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:926)
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1557)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:173)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:455)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:384)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:272)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:202)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:766)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:896)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)
With older version of 2.3 it is working fine.Anbody have any idea ...Kindly reply...
Updated on 2012-12-21T15:53:29Z at 2012-12-21T15:53:29Z by SystemAdmin
  • ClementLloyd
    ClementLloyd
    2 Posts

    Re: JSPG0124E: According to TLD or attribute directive in tag file

    ‏2012-05-09T22:06:26Z  
    Hi Ananta,

    It seems like you have written a custom tag having an attribute 'test'.In the tag library descriptor 'test' has its rtexprvalue set to false. i.e it doesn't accept values containing expressions.

    But in Selection.jsp where the tag is included, the attribute test is provided with the value = "http://${sessionScope.errMsg == null}" involving an expression.
    Hence the error.

    AFAIK this error will be thrown irrespective of the WAS version.
  • SystemAdmin
    SystemAdmin
    4447 Posts

    Re: JSPG0124E: According to TLD or attribute directive in tag file

    ‏2012-09-19T18:05:25Z  
    Was this issue fixed? I am having the same problem. I am on Websphere Application Server 7.0.0.19.
  • SystemAdmin
    SystemAdmin
    4447 Posts

    Re: JSPG0124E: According to TLD or attribute directive in tag file

    ‏2012-09-19T18:28:09Z  
    Was this issue fixed? I am having the same problem. I am on Websphere Application Server 7.0.0.19.
    I can switch the web application to web 2.4 and everything works fine. The moment I upgrade it to Web 2.5 with following steps, I see this error happen.

    1. Update web.xml to use web 2.5 with namespace changes, etc.
    2. Update the org.eclipse.wst.common.project.facet.core.xml to use web 2.5
    3. Create ibm-web-bnd.xml and ibm-web-ext.xml and update the files to use the same specifications that was present in ibm-web-bnd.xmi and ibm-web-ext.xmi.
    4. Remove the ibm-web-bnd.xmi and ibm-web-ext.xmi files.
    5. Perform a clean compile and deploy the application.

    When I do the deployment, If I check pre-compile jsp option to on, I can see the tag library error stating that according to the tld value expression is not allowed. If I revert everything to web 2.4 and repeat the same deployment, works fine.

    This does not seem to be new with IBM. They had this issue in WAS 6.0 and had fixed it in one of the fix packs. It sounds to me that this issue is back in WAS 7.0.0.19 unless I am missing something here.

    It is wierd that I have to open a PMR with IBM on this issue.
  • SystemAdmin
    SystemAdmin
    4447 Posts

    Re: JSPG0124E: According to TLD or attribute directive in tag file

    ‏2012-09-24T14:06:04Z  
    I can switch the web application to web 2.4 and everything works fine. The moment I upgrade it to Web 2.5 with following steps, I see this error happen.

    1. Update web.xml to use web 2.5 with namespace changes, etc.
    2. Update the org.eclipse.wst.common.project.facet.core.xml to use web 2.5
    3. Create ibm-web-bnd.xml and ibm-web-ext.xml and update the files to use the same specifications that was present in ibm-web-bnd.xmi and ibm-web-ext.xmi.
    4. Remove the ibm-web-bnd.xmi and ibm-web-ext.xmi files.
    5. Perform a clean compile and deploy the application.

    When I do the deployment, If I check pre-compile jsp option to on, I can see the tag library error stating that according to the tld value expression is not allowed. If I revert everything to web 2.4 and repeat the same deployment, works fine.

    This does not seem to be new with IBM. They had this issue in WAS 6.0 and had fixed it in one of the fix packs. It sounds to me that this issue is back in WAS 7.0.0.19 unless I am missing something here.

    It is wierd that I have to open a PMR with IBM on this issue.
    I finally found the reason for this issue. It has to do with your tag library (TLD) file. My old file had the following.
    <tlib-version>1.0</tlib-version>
    <jsp-version>1.1</jsp-version>
    As soon as I modified it to this
    <tlib-version>1.1</tlib-version>
    <jsp-version>1.2</jsp-version>

    the tag library started working for me. I hope in future this will save resource time for others.
  • SystemAdmin
    SystemAdmin
    4447 Posts

    Re: JSPG0124E: According to TLD or attribute directive in tag file

    ‏2012-12-21T15:53:29Z  
    I finally found the reason for this issue. It has to do with your tag library (TLD) file. My old file had the following.
    <tlib-version>1.0</tlib-version>
    <jsp-version>1.1</jsp-version>
    As soon as I modified it to this
    <tlib-version>1.1</tlib-version>
    <jsp-version>1.2</jsp-version>

    the tag library started working for me. I hope in future this will save resource time for others.
    I found the below working for websphere 7. when I used tlds version 1.1 in my application

    For compatibility with old JSP which use JSP 1.2
    and JSTl 1.1, Web.xml add settings to ignore EL

    <jsp-config>
    <jsp-property-group>
    <url-pattern>*.jsp</url-pattern>
    <el-ignored>true</el-ignored>
    </jsp-property-group>
    </jsp-config>