0
votes

I am trying to migrate a JSF 1.1 application from Websphere application server 6.1.0.9 to 8.5.0.0. While running the application, I get the following error -

    Caused by: com.ibm.ws.jsp.JspCoreException: Unable to convert string 'Customer: ' to class javax.el.ValueExpression for attribute value: java.lang.IllegalArgumentException: Property Editor not registered with the PropertyEditorManager
        at org.apache.jasper.runtime.JspRuntimeLibrary.getValueFromPropertyEditorManager(JspRuntimeLibrary.java:939)
        at com.ibm._jsp._bspCustomerHeader._jspx_meth_h_outputText_0(_bspCustomerHeader.java:128)
        at com.ibm._jsp._bspCustomerHeader._jspx_meth_hx_jspPanel_0(_bspCustomerHeader.java:259)
        at com.ibm._jsp._bspCustomerHeader._jspx_meth_hx_scriptCollector_0(_bspCustomerHeader.java:308)
        at com.ibm._jsp._bspCustomerHeader._jspx_meth_h_form_0(_bspCustomerHeader.java:350)
        at com.ibm._jsp._bspCustomerHeader._jspService(_bspCustomerHeader.java:101)
        ... 66 more

The JARs in my WEB-INF\lib are
axis.jar
com.ibm.ws.webcontainer_2.0.0.jar
commons-beanutils-1.7.0.jar
commons-collections-3.1.jar
commons-digester.jar
commons-discovery-0.2.jar
commons-logging-1.0.4.jar
commons-logging-adapters-1.1.1.jar
commons-validator-1.3.1.jar
icu4j_3_4_1.jar
jaxrpc.jar
jsf-ibm.jar
jstl_el.jar
jstl.jar
log4j-enhancements-v6-20050526.jar
oro-2.0.8.jar
saaj.jar
shale-tiles-1.0.4.jar
shale-view-1.0.5.jar
struts.jar
tiles-core-2.0-r468346-SNAPSHOT.jar
wsdl4j-1.5.1.jar

I have used PARENT_LAST classloading with JSP precompile set as false. I have tlds in my WEB-INF folder. Do I need to remove those ? If yes, what is the workaround ? Can you please tell me which trick am I missing ?

1
Remove jstl_el.jar and jstl.jar and retry. They might be of wrong versions, moreover Websphere as being a full Java EE implementation already provides them out the box. - BalusC
Is there a reason why you are providing webcontainer in your WEB-INF/lib? Also, several of the commons-* libraries are provided by WebSphere as they are Apache MyFaces dependencies. You could also try removing these too if your problem persists after trying BalusC's suggestion. - hwibell
@BalusC I tried removing jstl_el.jar and jstl.jar. It gives the same exception. - Keshab
@hwibell I get ClassNotFoundException if I remove commons-* libraries. I am not using default Apache Myfaces 2.0 implementation. I've set it up in the admin console to use SUN RI 1.2 instead as I've not implemented any code level changes which would be required for JSF 1.1/1.2 to JSF 2.0 implementation. The com.ibm.ws.webcontainer_2.0.0.jar has been used for implementing some custom renderers. Removing it would mean unresolved imports, viz. com.sun.faces.renderkit.html_basic.ButtonRenderer. - Keshab

1 Answers

0
votes

Your problems may be related to the default Java Server Faces (JSF) engine changing to MyFaces 2.0 in WebSphere Application Server V8.0. In previous releases of WebSphere, the default engine was the Sun Reference Implementation for JSF.

You can choose to migrate your application to use the new MyFaces 2.0 implementation or configure WebSphere V8 to use the older Sun Reference Implementation as the default JSF engine.

See the following link for more info on configuring WebSphere V8 to use the Sun RI as the default: http://www-01.ibm.com/support/knowledgecenter/SSAW57_8.0.0/com.ibm.websphere.nd.doc/info/ae/ae/tweb_jsf.html