0

Getting the error mentioned in the title when trying to access the application which is deployed on the WAS 8.5.5.16 on Linux machine . How ever same application(ear) when deployed on the local(windows) machine is working fine:This is the top section of the page :

<%-- jsf:pagecode language="java" location="/JavaSource/pagecode/Welcome.java" --%><%-- /jsf:pagecode --%>
<%@taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@taglib uri="http://www.ibm.com/jsf/html_extended" prefix="hx"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@page import="java.net.URLEncoder"; %><html lang="<%= URLEncoder.encode(request.getLocale().getLanguage(),"UTF-8") %>">
<HEAD>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<META name="GENERATOR" content="IBM Software Development Platform">

And If I remove the line <%@taglib uri="http://www.ibm.com/jsf/html_extended" prefix="hx"%>,Page loads but with login button missing .Need to understand what jar contains this reference which I guess its unable to find . I am pasting the section of the logs below . NOt sure what the problem is

Logs :

[10/09/20 18:02:58:468 BST] 00000153 webapp        E com.ibm.ws.webcontainer.webapp.WebApp reportRecursiveError Error Page Exception:
[10/09/20 18:02:58:506 BST] 00000153 webapp        E com.ibm.ws.webcontainer.webapp.WebApp logServletError SRVE0293E: [Servlet Error]-[/login.jsp]: com.ibm.ws.jsp.JspCoreException: JSPG0047E: Unable to locate tag library for uri http://www.ibm.com/jsf/html_extended
        at com.ibm.ws.jsp.translator.visitor.tagfiledep.TagFileDependencyVisitor.visitCustomTagStart(TagFileDependencyVisitor.java:76)
        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:369)
        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:263)
        at com.ibm.ws.jsp.translator.utils.JspTranslatorUtil.translateJspAndCompile(JspTranslatorUtil.java:123)
        at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.translateJsp(AbstractJSPExtensionServletWrapper.java:560)
        at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper._checkForTranslation(AbstractJSPExtensionServletWrapper.java:477)
        at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.checkForTranslation(AbstractJSPExtensionServletWrapper.java:298)
        at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.findWrapper(AbstractJSPExtensionProcessor.java:498)
        at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.getServletWrapper(AbstractJSPExtensionProcessor.java:338)
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1010)
        at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:1404)
        at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:196)
        at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:415)
        at com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:494)
        at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:162)
        at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:114)
        at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
        at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1233)
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:782)
        at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:481)
        at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)
        at com.ibm.mdm.ui.filter.SessionFilter.doFilter(SessionFilter.java:191)
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
        at com.ibm.mdm.ui.filter.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:66)
        at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
        at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:967)
        at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1107)
        at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4047)
        at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
        at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1016)
        at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817)
        at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:213)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:463)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:530)
        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:316)
        at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88)
        at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1833)
        at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
        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:204)
        at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1892)

[10/09/20 18:02:58:513 BST] 00000153 webapp        E com.ibm.ws.webcontainer.webapp.WebApp `enter code here`logServletError SRVE0293E: [Servlet Error]-[/error500.jsp]: com.ibm.ws.jsp.translator.JspTranslationException: JSPG0227E: Exception caught while translating /error500.jsp:
/error500.jsp(0,1) --> JSPG0005E: tld file could not be found for uri[http://www.ibm.com/jsf/html_extended] prefix [hx]
BalusC
  • 1,082,665
  • 372
  • 3,610
  • 3,555
  • Apparently server at localhost is not the same as one in production. Align out that first. – BalusC Sep 10 '20 at 17:47
  • What libraries are associated with the app on Linux? Are there any application, library, or server config differences between the working and non working environments? – wtlucy Sep 11 '20 at 15:44

1 Answers1

0

That namespace is used by the old IBM JavaServer Faces widget library (JWL) library. You need to provide the correct version of jsf-ibm.jar, which should be located in ${WAS_HOME}\optionalLibraries\IBM\jwl\2.0. For more information see WebSphere JWL Documentation and Resolving JSF Widget Library problems in JSF applications

wtlucy
  • 704
  • 3
  • 10
  • thank you @wtlucy . Tried this and now getting this error : Error Message: java.lang.StackOverflowError Error Code: 500 Target Servlet: Error Stack: java.lang.StackOverflowError at com.ibm.wsspi.webcontainer.logging.WebContainerLogger.isLoggable(WebContainerLogger.java:193) at com.ibm.ws.webcontainer.srt.SRTServletRequest.getAttribute(SRTServletRequest.java:392) at javax.servlet.ServletRequestWrapper.getAttribute(ServletRequestWrapper.java:85) at – boyhenryalpha Sep 11 '20 at 11:50
  • @boyhenryalpha I think you might want to create a separate question for that error - with the full stack for the exception - since I'm not sure if it's directly related. If my answer resolved the `JSPG0047E` you originally asked about then please mark it as accepted. – wtlucy Sep 11 '20 at 12:37
  • https://www.ibm.com/support/pages/executing-jsf-application-websphere-application-server-results-javalangoutofmemory-error Do you think this is the reason why I am getting this error now ? As you suggested i swapped the jsf-ibm-3.1.15 in my WEB-INF/lib folder with jsf-ibm.jar from optionalLibraries\IBM\jwl\2.0 – boyhenryalpha Sep 11 '20 at 13:09
  • Sorry, I had assumed that you didn't have a JWL library bundled in your app at all! The doc page you've linked to is likely for a different problem, but if you were previously using a newer version of jsf-ibm in your app when you originally opened the issue then I'm not sure why you had issues loading the `hx` tags! I've updated the answer with an additional doc link. – wtlucy Sep 11 '20 at 13:33
  • so back to square 1 then :) – boyhenryalpha Sep 11 '20 at 13:39