IBM WCM 8, весна 4
Я довольно новичок в IBM WCM и IBM Portal; Я использую следующие версии:
- IBM WebSphere Portal Server_8.0.0.0
- IBM Web Content Manager_8.0.0.0
Мне нужно создать настраиваемое действие для рабочего процесса WCM; до сих пор я смог создать очень простое настраиваемое действие, перейдя по этой ссылке: WCM Custom Action
Теперь мне нужно создать более сложное настраиваемое действие; в своем собственном действии я хотел бы использовать spring 4.0 и Hibernate 4.3.0; поэтому я создал файл EAR и модуль WAR; в моем WAR-модуле, в каталоге WEB-INF/lib у меня есть следующие jar-файлы:
- Обще-бассейн-1.5.4.jar
- весна-бобы-4.0.0.RELEASE.jar
- Зимуют-ядро-4.3.0.Final.jar
- dom4j-1.6.1.jar
- весна-АОП-4.0.0.RELEASE.jar
- валидация-апи-1.1.0.Final.jar
- Jandex-1.1.0.Final.jar
- весна-контекст-поддержка-4.0.0.RELEASE.jar
- Обще-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
- Обще-ДБХП-1.4.jar
- весна-4.0.0.RELEASE.jar JDBC
- спящая-Викисклад аннотации-4.0.4.Final.jar
- aopalliance-1.0.jar
- ДЖЕКСОН-картограф-ASL-1.9.13.jar
- весна-ТХ-4.0.0.RELEASE.jar
- SLF4J-log4j12-1.7.1.jar
- log4j-1.2.17.jar
- Обще-ю-2.4.jar
- весна-веб-4.0.0.RELEASE.jar
- XML-АПИС-1.0.b2.jar
- весна-ядро-4.0.0.RELEASE.jar
- спящий режим-пространственно-4,3-SNAPSHOT.jar
- весна-аспекты, 4.0.0.RELEASE.jar
- HSQLDB-2.0.0.jar
- одноклассник-1.0.0.jar
- JBoss-каротаж 3.1.3.GA.jar
- Зимуют-валидатор-5.0.2.Final.jar
- весна-ОРМ-4.0.0.RELEASE.jar
- Зимуют-EHCache-4.3.0.Final.jar
- SLF4J-апи-1.7.1.jar
- Викисклад коллекция-3.2.1.jar
- ДЖЕКСОН-ядро-ASL-1.9.13.jar
- весна-выражение-4.0.0.RELEASE.jar
- Обще-каротаж 1.1.3.jar
- пружинные контекстно-4.0.0.RELEASE.jar
- EHCache-ядро-2.6.6.jar
- Зимуют-JPA-2,1-апи-1.0.0.Final.jar
- spring-webmvc-4.0.0.RELEASE.jar Это мой файл web.xml:
<?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>
Это мой файл plugin.xml:
<?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>
Когда я пытаюсь развернуть EAR под моим WAS 8, установка EAR в порядке, но когда я пытаюсь запустить его, я получаю эту ошибку:
[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)
Я добавляю полный лог к вопросу. Кто-нибудь может сказать мне, где я не прав? Являются ли весна и спящий режим причиной указанной ошибки? Как я могу решить это?
1 ответ
Попробуйте следующий файл plugin.xml - обратите внимание на порядок следования атрибутов и удаление пробелов для имен / значений атрибутов:
<?xml version="1.0" encoding="UTF-8"?>
<plugin provider-name="IBM" version="1.0.0" name="Spring Custom Action" id="com.ibm.workplace.wcm.api.custom">
<extension-point name="CoMiCustomActionFactory" id="CoMiCustomActionFactory" />
<extension point="com.ibm.workplace.wcm.api.CustomWorkflowActionFactory" id="CoMiCustomActionFactory" >
<provider class="it.wcm.api.custom.SpringCustomActionFactory"/>
</extension>
</plugin>
Надеюсь это поможет. Убедитесь, что у вас есть включенные файлы JAR, чтобы скомпилировать код. Вам также понадобится:
- ilwwcm-api.jar - находится в: $ PORTAL_HOME $ / wcm / prereq.wcm / wcm / shared / app
- wp.base.jar - находится в: $PORTAL_HOME$/base/wp.base/shared/app
Вам также нужно будет убедиться, что при развертывании приложения оно привязано к экземпляру WebSphere_Portal И что это поведение при запуске (Enterprise Applications -> Deployed_WAR -> Startup Behavior), имеет ли порядок запуска, установленный на 30 (по умолчанию для WCM).
Пит.