Существует известная проблема – процессы не запускаются при развертывании бизнес-процессов с базой на Oracle.
В логах WPS эта ошибка может выглядить следующим образом:
1/12/08 10:53:44:886 EST 0000000a ContainerImpl E WSVR0501E: Error creating component com.ibm.ws.runtime.component.ApplicationMgrImpl@9c393d com.ibm.ws.exception.RuntimeWarning: com.ibm.ws.exception.RuntimeWarning: could not start application HTM_PredefinedTasks_V612_cluster1 because of filter com.ibm.bpe.framework.ProcessContainer@1c047f0 at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplications(ApplicationMgrImpl.java:823) at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:564) at com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.java:977) at com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:673) at com.ibm.ws.runtime.component.ApplicationServerImpl.start(ApplicationServerImpl.java:191) at com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.java:977) at com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:673) at com.ibm.ws.runtime.component.ServerImpl.start(ServerImpl.java:526) at com.ibm.ws.runtime.WsServerImpl.bootServerContainer(WsServerImpl.java:192) at com.ibm.ws.runtime.WsServerImpl.start(WsServerImpl.java:140) at com.ibm.ws.runtime.WsServerImpl.main(WsServerImpl.java:461) at com.ibm.ws.runtime.WsServer.main(WsServer.java:59) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at com.ibm.wsspi.bootstrap.WSLauncher.launchMain(WSLauncher.java:183) at com.ibm.wsspi.bootstrap.WSLauncher.main(WSLauncher.java:90) at com.ibm.wsspi.bootstrap.WSLauncher.run(WSLauncher.java:72) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:977) at com.ibm.wsspi.bootstrap.WSPreLauncher.launchEclipse(WSPreLauncher.java:336) at com.ibm.wsspi.bootstrap.WSPreLauncher.main(WSPreLauncher.java:91) Caused by: com.ibm.ws.exception.RuntimeWarning: could not start application HTM_PredefinedTasks_V612_cluster1 because of filter com.ibm.bpe.framework.ProcessContainer@1c047f0 at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:931) at com.ibm.ws.runtime.component.ApplicationMgrImpl$AppInitializer.run(ApplicationMgrImpl.java:2122) at com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:342) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
Если включить трассировку на WPS. то можно увидеть более конкретную ошибку:
BpelEngine E java.sql.SQLException: ORA-01400: cannot insert NULL into("BPEDB"."URI_TEMPLATE_B_T"."URI")
Эта ошибка вызвана тем, что в базе Oracle поле URL помечено как NOT NULL, но при вставке пустого значения (“”) Oracle трактует его как NULL.
Чтобы исправить это, необходимо внимательно проверить все ноды Catch и Throw процессов на наличие в них namespace-ов. Проце всего проанализировать *.bpel файлы и поискать в них <bpws:catch и <bpws:throw и обратить внимание на свойство faultName, в нем должен присутствовать префикс namespace-а.
<bpws:throw faultName="ns17:TerminateProcessException" name="TerminateProcess14" wpc:displayName="Terminate Process" wpc:id="464"/>; <bpws:catch faultName="ns17:TerminateProcessException"/>