I'm pretty new to IBM WCM and IBM Portal; I'm using the following versions:
- IBM WebSphere Portal Server_8.0.0.0
- IBM Web Content Manager_8.0.0.0
I need to create a custom action for the WCM workflow; so far I was able in creating a very simple custom action by following this link: WCM Custom Action
Now I need to create a more complex custom action; in my custom action I would like to use spring 4.0 and Hibernate 4.3.0; so I created an EAR file and a WAR module; in my WAR module, under WEB-INF/lib directory I have the following jars:
- commons-pool-1.5.4.jar
- spring-beans-4.0.0.RELEASE.jar
- hibernate-core-4.3.0.Final.jar
- dom4j-1.6.1.jar
- spring-aop-4.0.0.RELEASE.jar
- validation-api-1.1.0.Final.jar
- jandex-1.1.0.Final.jar
- spring-context-support-4.0.0.RELEASE.jar
- commons-math3-3.2.jar
- javassist-3.18.1-GA.jar
- antlr-2.7.7.jar
- aspectjweaver-1.7.4.jar
- hppc-0.5.4.jar
- commons-dbcp-1.4.jar
- spring-jdbc-4.0.0.RELEASE.jar
- hibernate-commons-annotations-4.0.4.Final.jar
- aopalliance-1.0.jar
- jackson-mapper-asl-1.9.13.jar
- spring-tx-4.0.0.RELEASE.jar
- slf4j-log4j12-1.7.1.jar
- log4j-1.2.17.jar
- commons-io-2.4.jar
- spring-web-4.0.0.RELEASE.jar
- xml-apis-1.0.b2.jar
- spring-core-4.0.0.RELEASE.jar
- hibernate-spatial-4.3-SNAPSHOT.jar
- spring-aspects-4.0.0.RELEASE.jar
- hsqldb-2.0.0.jar
- classmate-1.0.0.jar
- jboss-logging-3.1.3.GA.jar
- hibernate-validator-5.0.2.Final.jar
- spring-orm-4.0.0.RELEASE.jar
- hibernate-ehcache-4.3.0.Final.jar
- slf4j-api-1.7.1.jar
- commons-collections-3.2.1.jar
- jackson-core-asl-1.9.13.jar
- spring-expression-4.0.0.RELEASE.jar
- commons-logging-1.1.3.jar
- spring-context-4.0.0.RELEASE.jar
- ehcache-core-2.6.6.jar
- hibernate-jpa-2.1-api-1.0.0.Final.jar
- spring-webmvc-4.0.0.RELEASE.jar This is my web.xml file content:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>CoMiGeoMediaWeb</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:application-context.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
</web-app>
This is my plugin.xml file content:
<?xml version="1.0" encoding="UTF-8"?>
<plugin id= "mitu.wcm.api.custom"
name= "Spring Custom Action"
version= "1.0.0"
provider-name= "IBM" >
<extension-point id= "CoMiCustomActionFactory" name="CoMiCustomActionFactory" />
<extension point="com.ibm.workplace.wcm.api.CustomWorkflowActionFactory" id= "CoMiCustomActionFactory" >
<provider class= "it.wcm.api.custom.SpringCustomActionFactory"/>
</extension>
</plugin>
When I try to deploy the EAR under my WAS 8, the EAR installation is OK but when I try to start it, I get this error:
[3/11/14 9:14:38:719 CET] 000000e7 RegistryLoade W CWXRS0010W: Error while processing: file:/opt/IBM/WebSphere/wp_profile/installedApps/192Cell/CoMiGeoMedia.ear/CoMiGeoMediaWeb.war/WEB-INF/plugin.xml
java.lang.ClassCastException: com.ibm.wkplc.extensionregistry.Extension incompatible with com.ibm.wkplc.extensionregistry.ExtensionPoint
at com.ibm.wkplc.extensionregistry.RegistryCache.putExtensionPoint(RegistryCache.java:341)
at com.ibm.wkplc.extensionregistry.PluginDescriptor.convertObjectsToProxies(PluginDescriptor.java:296)
at com.ibm.wkplc.extensionregistry.ExtensionRegistry.addPlugin(ExtensionRegistry.java:339)
at com.ibm.wkplc.extensionregistry.ExtensionRegistry.addPlugin(ExtensionRegistry.java:319)
at com.ibm.wkplc.extensionregistry.RegistryLoader.loadPluginXml(RegistryLoader.java:482)
I add the full log to the question. Can anybody tell me where I'm wrong? Are spring and hibernate causing the listed error? Ho can I solve it?