Reputation: 2321
I am trying to get Mojarra 2.2.6 (or MyFaces 2.2.2, same exception on both) up and running in Websphere 8.5. I've set the class loader setting correctly to PARENT_LAST and SINGLE as usual. The new jars are being picked up successfully but the following pesky exception is being thrown and causing the app to not start. Any help is appreciated, Thanks!
An exception occurred while validating an annotation: com.ibm.wsspi.amm.validate.ValidationException: SRVE8016E: The @MultipartConfig annotation can not be applied to the class, javax.faces.webapp.FacesServlet, because it extends the wrong super class
full stack trace
4/3/14 17:21:16:800 EDT] 00000715 annotations E CWWAM0003E: An exception occurred while validating an annotation: com.ibm.wsspi.amm.validate.ValidationException: SRVE8016E: The @MultipartConfig annotation can not be applied to the class, javax.faces.webapp.FacesServlet, because it extends the wrong super class
com.ibm.wsspi.amm.validate.ValidationException: SRVE8016E: The @MultipartConfig annotation can not be applied to the class, javax.faces.webapp.FacesServlet, because it extends the wrong super class
at com.ibm.ws.webcontainer.annotation.validator.MultipartConfigValidator.validateClassAnnotation(MultipartConfigValidator.java:44)
at com.ibm.ws.webcontainer.annotation.validator.MultipartConfigValidator.validateClassAnnotation(MultipartConfigValidator.java:39)
at com.ibm.ws.webcontainer.annotation.validator.MultipartConfigValidator.validate(MultipartConfigValidator.java:35)
at com.ibm.wsspi.amm.merge.AbstractMergeAction.mergeClassTargets(AbstractMergeAction.java:353)
at com.ibm.wsspi.amm.merge.AbstractMergeAction.merge(AbstractMergeAction.java:123)
at com.ibm.ws.amm.AnnotativeMetadataManagerImpl.performMergeOperations(AnnotativeMetadataManagerImpl.java:509)
at com.ibm.ws.amm.AnnotativeMetadataManagerImpl.merge(AnnotativeMetadataManagerImpl.java:274)
at com.ibm.ws.amm.commonarchive.AnnotationsProcessorImpl.merge(AnnotationsProcessorImpl.java:144)
at com.ibm.ws.amm.commonarchive.AnnotationsProcessorImpl.merge(AnnotationsProcessorImpl.java:66)
at org.eclipse.jst.j2ee.commonarchivecore.internal.impl.WARFileImpl.processAnnotations(WARFileImpl.java:923)
at com.ibm.ws.webfragmerger.WebFragMergerImpl.merge(WebFragMergerImpl.java:493)
at org.eclipse.jst.j2ee.commonarchivecore.internal.impl.WARFileImpl.mergeAnnotationsAndFragments(WARFileImpl.java:869)
at org.eclipse.jst.j2ee.commonarchivecore.internal.impl.WARFileImpl.getDeploymentDescriptor(WARFileImpl.java:648)
at org.eclipse.jst.j2ee.commonarchivecore.internal.impl.WARFileImpl.getDeploymentDescriptor(WARFileImpl.java:367)
at org.eclipse.jst.j2ee.commonarchivecore.internal.impl.WARFileImpl.getDeploymentDescriptor(WARFileImpl.java:349)
at com.ibm.ws.websvcs.deploy.PersistentStorageInstallTask.processClientBindings(PersistentStorageInstallTask.java:306)
at com.ibm.ws.websvcs.deploy.PersistentStorageInstallTask.performTask(PersistentStorageInstallTask.java:168)
at com.ibm.ws.management.application.SchedulerImpl.run(SchedulerImpl.java:315)
at java.lang.Thread.run(Thread.java:780)
Upvotes: 1
Views: 4082
Reputation: 3736
The Error
SRVE8016E: The @MultipartConfig annotation can not be applied to the class, javax.faces.webapp.FacesServlet, because it extends the wrong super class
Is a Websphere Bug, Updating to 8.5.5.6 fixes it.
Upvotes: 2
Reputation: 3164
I wrote this blog to demonstrate how to make websphere 8.5 use mojarra not myfaces.
http://mojarraonwebsphere.blogspot.com/2014/09/upgrading-mojarra-in-ibm-websphere-85.html
Upvotes: 0
Reputation: 877
I have faced the same issue with a WAS 8.0.0.8. I resolved the issue by removing the Mojarra jars (jsf-api & jsf-impl jars) from my web app and adding them in an isolated shared library. Additionally i needed to add the primefaces jar (i used PF 4.0) also in the isolated shared library for the error to go away.
Upvotes: 3