Topic
IC4NOTICE: developerWorks Community will be offline May 29-30, 2015 while we upgrade to the latest version of IBM Connections. For more information, read our upgrade FAQ.
5 replies Latest Post - ‏2012-12-21T15:53:29Z by SystemAdmin
SystemAdmin
SystemAdmin
4447 Posts
ACCEPTED ANSWER

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
    ACCEPTED ANSWER

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

    ‏2012-05-09T22:06:26Z  in response to SystemAdmin
    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
    ACCEPTED ANSWER

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

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

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

      ‏2012-09-19T18:28:09Z  in response to SystemAdmin
      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
        ACCEPTED ANSWER

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

        ‏2012-09-24T14:06:04Z  in response to SystemAdmin
        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
          ACCEPTED ANSWER

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

          ‏2012-12-21T15:53:29Z  in response to SystemAdmin
          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>