How to emulate invoke in BPEL process test
I do some experiments with BPEL tests. There are some possibilities to emulate messages (for receive activities).
How can I test invoke activities. I need that BPEL test do not invoke webservice but continue with emulated ouput values.
Thanks.
Hello.
I try to emulate call operation in my BPEL process. Operation is defined as synchronous two-way operation in WSDL. But when I create test with emulation inbound message I see nothing and found in log this:
It seems to only asynchronous operations can by emulated.
<2008-02-19 10:16:54,136> <ERROR> <default.collaxa.cube.bpeltest> <com.collaxa.cube.engine.test.PartnerEmulation$ScheduledPost::execute> scheduled post failed
com.oracle.bpel.client.ServerException: IDeliveryService.post() invoked for twp-way operation 'orderAccept'. This method can only be used to invoke one-way operations which don't return any messages. Please check the WSDL which defines this operation and use the method IDeliveryService.request() to invoke a two-way operation
at com.collaxa.cube.engine.delivery.DeliveryHandler.post(DeliveryHandler.java:98)
at com.collaxa.cube.ejb.impl.DeliveryBean.post(DeliveryBean.java:201)
at com.collaxa.cube.ejb.impl.DeliveryBean.post(DeliveryBean.java:156)
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.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
at com.evermind.server.ThreadState.runAs(ThreadState.java:646)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at DeliveryBean_RemoteProxy_4bin6i8.post(Unknown Source)
at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:195)
at com.collaxa.cube.engine.test.PartnerEmulation$ScheduledPost.execute(PartnerEmulation.java:531)
at com.collaxa.cube.engine.test.PartnerEmulation.emulatePost(PartnerEmulation.java:339)
at com.collaxa.cube.engine.test.PartnerEmulation.emulate(PartnerEmulation.java:396)
at com.collaxa.cube.engine.ext.wmp.BPELReceiveWMP.perform(BPELReceiveWMP.java:181)
at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3672)
at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1650)
at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)
at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:184)
at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:276)
at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5658)
at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1726)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.handleWorkItem(CubeEngineBean.java:306)
at sun.reflect.GeneratedMethodAccessor52.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at com.evermind.server.ThreadState.runAs(ThreadState.java:648)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at CubeEngineBean_LocalProxy_4bin6i8.handleWorkItem(Unknown Source)
at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handle(PerformMessageHandler.java:45)
at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:138)
at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
at sun.reflect.GeneratedMethodAccessor31.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.SetContextActionInterceptor.invoke(SetContextActionInterceptor.java:44)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at oracle.j2ee.connector.messageinflow.MessageEndpointImpl.OC4J_invokeMethod(MessageEndpointImpl.java:297)
at WorkerBean_EndPointProxy_4bin6i8.onMessage(Unknown Source)
at oracle.j2ee.ra.jms.generic.WorkConsumer.run(WorkConsumer.java:266)
at oracle.j2ee.connector.work.WorkWrapper.runTargetWork(WorkWrapper.java:242)
at oracle.j2ee.connector.work.WorkWrapper.doWork(WorkWrapper.java:215)
at oracle.j2ee.connector.work.WorkWrapper.run(WorkWrapper.java:190)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:814)
at java.lang.Thread.run(Thread.java:595)
What can I do?
Similar Messages
-
How to identify the process that invoked a bpel process?
Hi ,
I have 2 ESBs which invoke a single BPEL process. How do I check which ESB invoked the BPEL process? I need to do different procesings within the BPEL based on that.
ThanksOr have default 'header' information in your bpel processes (either like Kania said, soap header or just some header-payload in your normal payload)
We used this too to track userinformation from the gui to the end call to webservice inwhich we log the caller-information (user from website) -
RequestTimeoutException error while invoking a BPEL process using RMI
Hi,
I am getting RequestTimeoutException error while invoking a BPEL process using this code:
Locator locator = LocatorFactory.createLocator(jndiProps);
String compositeDN = "default/"+processName+"!1.0";
Composite composite = locator.lookupComposite(compositeDN);
String serviceName = "client";
Service deliveryService = composite.getService(serviceName);
NormalizedMessage nm = new NormalizedMessageImpl();
nm.getPayload().put("payload", requestXml);
NormalizedMessage res = deliveryService.request("process", nm);
responseMap = res.getPayload();
The error stack trace is
weblogic.rmi.extensions.RequestTimeoutException: RJVM response from 'weblogic.rjvm.RJVMImpl@604f2d14 - id: '-361032376059206
2776S:10.67.232.164:[8001,-1,-1,-1,-1,-1,-1]:emaar_domain:soa_server1' connect time: 'Mon Jan 18 11:34:41 GST 2010'' for 'executeServiceMethod
(Loracle.soa.management.CompositeDN;Ljava.lang.String;Ljava.lang.String;[Ljava.lang.Object;) 'timed out after: 60000ms.
oracle.fabric.common.FabricInvocationException: weblogic.rmi.extensions.RequestTimeoutException: RJVM response from 'weblogic.rjvm.RJVMImpl@60
4f2d14 - id: '-3610323760592062776S:10.67.232.164:[8001,-1,-1,-1,-1,-1,-1]:emaar_domain:soa_server1' connect time: 'Mon Jan 18 11:34:41 GST 20
10'' for 'executeServiceMethod(Loracle.soa.management.CompositeDN;Ljava.lang.String;Ljava.lang.String;[Ljava.lang.Object;) 'timed out after: 6
0000ms.
at oracle.soa.management.internal.facade.ServiceImpl.request(ServiceImpl.java:135)
at com.gss.common.bo.BpelUtil.invokeBPELProcess(BpelUtil.java:81)
To add to it the BPEL process is executing successfuly and RMI call timeout is happening.
Can I know how to increase the related timeout value?Have got the same problem. Scenario at my end is little different though.
I am trying to invoke a BPEL process from an ESB Service.
I am trying to look into it..
However, would be grateful, if someone can give some insight into this since many are running into this issue without being able to fix.
Ashish. -
Invalid connection cache name error while invoking a bpel process
while invoking a service via DB adapter ,it gives invalid connection cache name orabpel 00000 error. the JCA connection is set properly and its reffered via jndi name in code. i tested the connection in EM and its working fine.
Few transactions have passed and thereafter i'm getting this error.
is there any parameter that needs to be set. Someone can help here!!Have got the same problem. Scenario at my end is little different though.
I am trying to invoke a BPEL process from an ESB Service.
I am trying to look into it..
However, would be grateful, if someone can give some insight into this since many are running into this issue without being able to fix.
Ashish. -
Issue in invoking a BPEL process (having a DB Adapter) from ESB
Dear All,
I am having an issue while invoking a ESB process (Batch file mode) which inturn will call a second BPEL process which will invoke the Oracle APPS standard API ego_item_pub.process_items to create an item in Inventocry, through a DB adapter
I am able to create the Item and API is working when I pass the input XML through the second BPEL process.
But when invoking through the ESB process which will invoke the BPEL process, based on the polling to the batch file from the ESB. This is done through an FTP adapter in ESB.
The Issue is that while invoking from ESB, through batch file. The PL/SQL API is throwing error from the standard API 'ego_item_pub.process_items'
But it works fine if I invoke the BPEL process individually.
What might be the problem for this and how can I fix this..
Please update..
Many thanks in advance ...Hi,
We tried the same thing and it worked for us. In our scenario we had a BPEL process calling a ESB and then this ESB calling another BPEL process which inturn calls the API. I agree with James it seems more of a Data issue/or your XSD is not proper i.e the XSD that you ESB process is having. If you have created a ESB and then changed the BPEL process afterward the issue you mentioned will come. Please run the process in DEBIG mode and provide the domain.log file.
Regards
Sahil
http://soab2bsahil.blogspot.com -
Invoking a BPEL process thru JSP.
i've read the oracle tutorial on how to invoke the BPEL process thru JSP, but when running, it doesn't work with the following error: server error 500
i'm not sure how i should deploy the jsp page, by selecting run in JDeveloper it gave the error specified above
help me out,
cheers,
ShivekI got it atlast. Actually I wanted application log to see the error. I found this log file(application.log) under
<ORACLE_AS_HOME>\j2ee\home\application-deployments\hello\home_default_group_1
I found that since this is a JSF application, i am missing the '/faces' in the URL and because of which, it was unable to find the FacesContext.
It's working now. Thanks a lot for your support.
Regards -
Invoking a BPEL process from a WS
Errors occurred when I tried to invoke a BPEL process from a WS. The BPEL process was deployed in Local PM server and the WS was deployed in local OC4J server of JDeveloper 10g.
在Java class 发布成WS,部署在JDeveloper 10g中的oc4j服务器里,调用本机的BPEL流程出错,
WS coding as below:
WS代码如下:
package zbht.com;
import com.oracle.bpel.client.Locator;
import com.oracle.bpel.client.NormalizedMessage ;
import com.oracle.bpel.client.dispatch.IDeliveryService ;
import java.util.Date;
import com.oracle.services.bpel.task.IWorklistService;
import com.oracle.services.bpel.task.ITask;
public class test
public test()
* @webmethod
public void getBPEL(String str1,String str2)
try{
String xml = "<BPELProcess xmlns=\"http://xmlns.oracle.com/BPELProcess\">"
+ "<input>"+str1+"</input>"
+ "<input1>"+str2+"</input1>"
+ "</BPELProcess>";
System.out.println(xml);
// String xml="<OrgName xmlns=\"http://sse.org.cn/poc\">"+OrgName+"</OrgName>";
Locator locator = new Locator("default","bpel");
System.out.println("123");
IDeliveryService deliveryService = (IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME);
System.out.println("1234");
// construct the normalized message and send to Oracle BPEL Process Manager
NormalizedMessage nm = new NormalizedMessage( );
System.out.println("12345");
nm.addPart("payload" , xml );
deliveryService.post("BPELProcess", "initiate", nm);
}catch(Exception e)
e.printStackTrace();
Process source coding as below:
流程代码:
<process name="BPELProcess" targetNamespace="http://xmlns.oracle.com/BPELProcess" xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/" xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20" xmlns:ns1="http://zbht/com/test.wsdl" xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap" xmlns:bpelx="http://schemas.oracle.com/bpel/extension" xmlns:client="http://xmlns.oracle.com/BPELProcess" xmlns:ora="http://schemas.oracle.com/xpath/extension" xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc">
<partnerLinks>
<partnerLink name="client" partnerLinkType="client:BPELProcess" myRole="BPELProcessProvider"/>
<partnerLink myRole="testPortType_Role" name="PartnerLink_1" partnerRole="testPortType_Role" partnerLinkType="ns1:testPortType_PL"/>
</partnerLinks>
<variables>
<variable name="inputVariable" messageType="client:BPELProcessRequestMessage"/>
<variable name="outputVariable" messageType="client:BPELProcessResponseMessage"/>
<variable name="Invoke_1_test_InputVariable" messageType="ns1:test0Request"/>
<variable name="Invoke_1_test_OutputVariable" messageType="ns1:test0Response"/>
</variables>
<sequence name="main">
<receive name="receiveInput" partnerLink="client" portType="client:BPELProcess" operation="process" variable="inputVariable" createInstance="yes"/>
<assign name="Assign_1">
<copy>
<from variable="inputVariable" part="payload" query="/client:BPELProcessProcessRequest/client:input"/>
<to variable="Invoke_1_test_InputVariable" part="str1"/>
</copy>
<copy>
<from variable="inputVariable" part="payload" query="/client:BPELProcessProcessRequest/client:input1"/>
<to variable="Invoke_1_test_InputVariable" part="str2"/>
</copy>
</assign>
<invoke name="Invoke_1" partnerLink="PartnerLink_1" portType="ns1:testPortType" operation="test" inputVariable="Invoke_1_test_InputVariable" outputVariable="Invoke_1_test_OutputVariable"/>
<assign name="Assign_2">
<copy>
<from variable="Invoke_1_test_OutputVariable" part="return"/>
<to variable="outputVariable" part="payload" query="/client:BPELProcessProcessResponse/client:result"/>
</copy>
</assign>
<reply name="replyOutput" partnerLink="client" portType="client:BPELProcess" operation="process" variable="outputVariable"/>
</sequence>
</process>
Error messages:
错误信息:
05/10/08 17:06:06 java.lang.Exception: Failed to create "ejb/collaxa/system/DomainManagerBean" bean; exception reported is: "javax.naming.NameNotFoundException: ejb/collaxa/system/DomainManagerBean not found at com.evermind.server.rmi.RMIContext.lookup(RMIContext.java:164) at com.evermind.server.ApplicationContext.lookup(ApplicationContext.java:333) at com.evermind.server.ApplicationContext.lookup(ApplicationContext.java:120) at javax.naming.InitialContext.lookup(InitialContext.java:347) at com.oracle.bpel.client.util.BeanRegistry.lookupDomainManagerBean(BeanRegistry.java:218) at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:83) at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:47) at com.oracle.bpel.client.Locator.<init>(Locator.java:65) at zbht.com.test.getBPEL(test.java:29) at zbht.com.__testStatelessWrapper.invokeMethod(__testStatelessWrapper.java:101) at oracle.j2ee.ws.InvocationWrapper.invoke(InvocationWrapper.java:380) at oracle.j2ee.ws.RpcWebService.doGetRequest(RpcWebService.java:642) at oracle.j2ee.ws.BaseWebService.doGet(BaseWebService.java:1173) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:649) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322) at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112) at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192) at java.lang.Thread.run(Thread.java:534)".05/10/08 17:06:06 at com.oracle.bpel.client.util.BeanRegistry.lookupDomainManagerBean(BeanRegistry.java:232)05/10/08 17:06:06 at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:83)05/10/08 17:06:06 at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:47)05/10/08 17:06:06 at com.oracle.bpel.client.Locator.<init>(Locator.java:65)05/10/08 17:06:06 at zbht.com.test.getBPEL(test.java:29)05/10/08 17:06:06 at zbht.com.__testStatelessWrapper.invokeMethod(__testStatelessWrapper.java:101)05/10/08 17:06:06 at oracle.j2ee.ws.InvocationWrapper.invoke(InvocationWrapper.java:380)05/10/08 17:06:06 at oracle.j2ee.ws.RpcWebService.doGetRequest(RpcWebService.java:642)05/10/08 17:06:06 at oracle.j2ee.ws.BaseWebService.doGet(BaseWebService.java:1173)05/10/08 17:06:06 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)05/10/08 17:06:06 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)05/10/08 17:06:06 at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)05/10/08 17:06:06 at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source)05/10/08 17:06:06 at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:649)05/10/08 17:06:06 at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)05/10/08 17:06:06 at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)05/10/08 17:06:06 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)05/10/08 17:06:06 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)05/10/08 17:06:06 at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)05/10/08 17:06:06 at java.lang.Thread.run(Thread.java:534)
ThanksHey,
no big deal, this is because the Locator you use, runs in, say local mode,
use the other API constructor in locator, which gets a hashtable.
Tutorial is available in samples\tutorials\102.InvokingProcesses\rmi
Locator locator = new Locator("default","bpel",props);
The reason why you get that "notFoundEx" is because you are not in the same rmi.context bel runs in. -
PHP always invokes Two BPEL process Instances
Hello All:
I have a BPEL process that I want to invoke from a PHP form. The problem that I'm having is that every time that I invoke the BPEL process from PHP, two instances of that BPEL process get created and invoked in the BPEL manager.
Has anyone experienced this problem? I know that when I log into the BPEL console and initiate a test instance, I only get one, so my feeling is that it may be PHP. Here is a list of my environments:
BPEL Server Environment
OS Version - Microsoft Windows XP
Oracle SOA Suite v10.1.3.1.0
Oracle BPEL Console v10.1.3.1.0
Client Environment
Server Software - Apache/2.0.55 (Win32)
OS Version - Microsoft Windows XP
PHP Version - 5.1.4
Zend Engine Version - 2.1.0
Here is my PHP code for invoking the BPEL process:
<?php
$wsdl = 'http://localhost:8888/orabpel/default/ChangeCustomerName/1.0/ChangeCustomerName?wsdl';
try {
$client = new SoapClient($wsdl);
$return = $client->process(array("cust_account_id"=>167484,"new_cust_name"=>"TESTING>"));
if ($return->return_code == 'E') {
echo 'Error: '.$return->return_message;
} else {
echo 'Success!';
} catch (SOAPFault $e) {
var_dump($e);
?>
Again the problem is not that I can't invoke a BPEL process or that the BPEL process does not function properly, it is that when I do invoke it from PHP, I get two instances in BPEL.
Thanks,
BenIf you are using a tool like: soapui.org (Opensource SOAP client tool), and create a soap request, do you get the same behavior. If so, there is an issue in BPEL, otherwise in your PHP environment.
-
Invoking the BPEL process automatically
Hi All,
I wanted to invoke the BPEL process automatically when ever it is deployed.
Any thoughts...
Thank you.Hi,
if you deploy your bpel via ant you can do the following options:
add a target and within this target call a script which calls the bpel (e.g. PERL http://dietrichschroff.blogspot.com/2008/10/lost-collaxa-bpel-tutorials.html)
or
create a test suite (http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28981/testsuite.htm#CACDIFFJ) and include it within ant (http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28981/testsuite.htm#CACGIHGA). You can use "Emulations" or the real partner webservices -
Error Occured while Invoking a BPEL Process from JAVA
Hi.....
When initiating a BPEL process from JAVA the code is working fine and the Process is getting initiated.But while using that code in J2EE project as a java code and while calling that method Error is occuring.....
Here by i am attaching my JAVA Code which runs as an applicateion and package which runs in Server....
JSP and Java Method Used:
JSP Code:
===============
<%@ page import=" bo.callbpel" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>FEATT - I30</title>
</head>
<body>
<%
String input=request.getParameter("dnvalue");
callbpel p=new callbpel();
String Output=p.Initiate(input);
out.print("The Input Given to the BPEL Process is : "+input);
%>
<BR><BR><BR><BR><BR><BR>
<%
out.print("The Reply from BPEL Process is : "+Output);
%>
</body>
</html>
Java Code:
package bo;
import com.oracle.bpel.client.Locator;
import com.oracle.bpel.client.NormalizedMessage;
import com.oracle.bpel.client.delivery.IDeliveryService;
import java.util.Map;
import java.util.Properties;
import oracle.xml.parser.v2.XMLElement;
/*import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest ;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; */
//import java.util.*;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
public class callbpel {
public String Initiate(String value){
String replyText=null;
String input = value;
System.out.println(input);
String xmlInput= "<ns1:AccessDBBPELProcessRequest xmlns:ns1=\"http://xmlns.oracle.com/AccessDBBPEL\"><ns1:input>"+input+"</ns1:input></ns1:AccessDBBPELProcessRequest>";
String xml="<ns1:BPELProcess1ProcessRequest xmlns:ns1=\"http://xmlns.oracle.com/BPELProcess1\">";
xml=xml+"<ns1:input>"+input+"</ns1:input>";
xml=xml+"</ns1:BPELProcess1ProcessRequest>";
try{
Properties props=new Properties();
props.setProperty("orabpel.platform","ias_10g");
props.setProperty("java.naming.factory.initial","com.evermind.server.rmi.RMIInitialContextFactory");
props.setProperty("java.naming.provider.url","opmn:ormi://157.227.132.226:6003:home/orabpel");
props.setProperty("java.naming.security.principal","oc4jadmin");
props.setProperty("java.naming.security.credentials","oc4jadmin");
props.setProperty("dedicated.rmicontext", "true");
Locator locator = new Locator("default", "bpel", props);
String uniqueBpelId = com.collaxa.cube.util.GUIDGenerator.generateGUID();
//System.out.println(uniqueBpelId);
//java.util.Map msgProps = new HashMap();
System.out.println("After creating the locator object......");
IDeliveryService deliveryService =(IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME);
System.out.println("Before creating the NormalizedMessage object......");
NormalizedMessage nm = new NormalizedMessage();
System.out.println("After creating the NormalizedMessage object.*.*.*...");
//msgProps.put("conversationId",uniqueBpelId);
//nm.setProperty("conversationId",uniqueBpelId);
nm.addPart("payload", xml);
System.out.println("Before creating response object......");
NormalizedMessage res = deliveryService.request("BPELProcess1", "process", nm);
System.out.println("After calling the BPELProcess1 .*.*.*...");
Map payload = res.getPayload();
System.out.println("BPEL called");
XMLElement xmlEl=(oracle.xml.parser.v2.XMLElement)payload.get("payload");
replyText=xmlEl.getText();
System.out.println("Reply from BPEL Process>>>>>>>>>>>>> "+replyText);
catch (Exception e) {
System.out.println("Exception : "+e);
e.printStackTrace();
return replyText;
While Creating and Object for the Class callbpel and Whilw Calling that Method
callbpel p=new callbpel();
String Output=p.Initiate(input);
Its throwing an Error:
Error Occured is:
After creating the locator object......
Before creating the NormalizedMessage object......
After creating the NormalizedMessage object.*.*.*...
Before creating response object......
Apr 24, 2008 9:12:00 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.NoClassDefFoundError: javax/ejb/EJBException
at com.oracle.bpel.client.util.ExceptionUtils.handleServerException(ExceptionUtils.java:76)
at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:254)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:83)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
at bo.callbpel.Initiate(callbpel.java:55)
at org.apache.jsp.output_jsp._jspService(output_jsp.java:55)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Unknown Source)
For Running JSP i am Using Eclipse 3.2.0 and apache-tomcat-5.5.25
Please Provide me a Solution......
Thanks in Advance.....
Regards,
Suresh KHave got the same problem. Scenario at my end is little different though.
I am trying to invoke a BPEL process from an ESB Service.
I am trying to look into it..
However, would be grateful, if someone can give some insight into this since many are running into this issue without being able to fix.
Ashish. -
Issue while invoking a BPEL process
Hi
We are invoking a BPEL prcs from ESB project.The ESB project has a Oracle application adapter to read from a queue and a external soap service to invoke a BPEL process.
The Oracle application adapter is working fine as it is pulling data from the queue successfully and after that the BPEL process is invoked using the soap external service.
Now the interesting part is that the process when newly deployed (v 1.0) works fine but after sometime ESB fails to invoke the BPEL service. We then again redeploy the BPEL prcs(v 1.0) and evrything works fine but only for few instances....... So evry time we are having to redeploy the BPEL prcs when ESB fails to invoke the BPEL prcs
The error that we get at the ESB console is :
An unhandled exception has been thrown in the ESB system. The exception reported is: "org.collaxa.thirdparty.apache.wsif.WSIFException: exception on JaxRpc invoke:
HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message transmission fa
ilure, response code: 401
at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeOperation(WSIFOperation_JaxRpc.java:1720)
and in the WSM gateway error is :
Error message - Service returns soap fault: Fault Code=[:XXXXX_yyyyPortType] Fault String=[Cannot figure out operation name. Bad SOAPAction or wsa:Action.];
Please help!!
ThanksHi
I made a mistake.... I copied the wrong error message from the ESB console ..... The response code is 500 and not 401.......
Here is the message at ESB console :
An unhandled exception has been thrown in the ESB system. The exception reported is: "org.collaxa.thirdparty.apache.wsif.WSIFException: exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message transmission failure, response code: 500 at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeOperation(WSIFOperation_JaxRpc.java:1720) at com.collaxa.cube.ws.wsif.providers.oc4j.jaxrpc.WSIFOperation_JaxRpc.invokeRequestResponseOperation(WSIFOperation_JaxRpc.java:1466) at
and in the WSM gateway error is :
Error message - Service returns soap fault: Fault Code=[:XXXXX_yyyyPortType] Fault String=[Cannot figure out operation name. Bad SOAPAction or wsa:Action.]; -
Invoking a BPEL process from java API (Urgent)
Hi,
I am using this java api to invoke a bpel process.
package mypackage;
import com.oracle.bpel.client.Locator;
import com.oracle.bpel.client.NormalizedMessage;
import com.oracle.bpel.client.dispatch.IDeliveryService;
import com.oracle.bpel.client.ServerException;
public class InvokeBpel1
// Connect to domain “default” using password “bpel”
// null IP address means local server
public static void main(String args[])
Locator locator=null;
String xml =" <soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope\">"
+"<soap:Header/>"
+" <soap:Body xmlns:ns1=\"http://xmlns.oracle.com/BPELMultiplePO\">"
+"<ns1:BPELMultiplePOProcessRequest>"
+" <ns1:input>4686</ns1:input>"
+" </ns1:BPELMultiplePOProcessRequest>"
+" </soap:Body>"
+"</soap:Envelope>";
try
locator = new Locator("default","bpel","10.227.5.34");
IDeliveryService deliveryService =(IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME );
NormalizedMessage nm = new NormalizedMessage( );
nm.addPart("payload", xml );
NormalizedMessage res =
deliveryService.request("BPELMultiplePO(v1.1)", "process", nm);
catch (Exception e)
e.printStackTrace();
But it is showing following errors.----
java.lang.Exception: Failed to create "ejb/collaxa/system/DomainManagerBean" bean; exception reported is: "javax.naming.NameNotFoundException: ejb/collaxa/system/DomainManagerBean not found
at com.evermind.server.rmi.RMIContext.lookup(RMIContext.java:164)
at com.evermind.naming.FilterContext.lookup(FilterContext.java:138)
at com.evermind.naming.SubFilterContext.lookup(SubFilterContext.java:55)
at javax.naming.InitialContext.lookup(InitialContext.java:347)
at com.oracle.bpel.client.util.BeanRegistry.lookupDomainManagerBean(BeanRegistry.java:218)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:83)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:47)
at com.oracle.bpel.client.Locator.<init>(Locator.java:87)
at mypackage.InvokeBpel1.main(InvokeBpel1.java:26)
at com.oracle.bpel.client.util.BeanRegistry.lookupDomainManagerBean(BeanRegistry.java:232)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:83)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:47)
at com.oracle.bpel.client.Locator.<init>(Locator.java:87)
at mypackage.InvokeBpel1.main(InvokeBpel1.java:26)
What should I do remove this problem?Your problem sounds like many RMI problems answered in this forum in the past, especially if the java client is not on the same container as the bpel engine.
Usually solved with setting some environment properties like dedicated.rmicontext=true etc.
Please search the forum history. -
Invoking a BPEL process from a Java application
Hello all
I am trying to invoke a BPEL process from a JSP. The JSP is deployed in a different weblogic domain (different from the BPEL weblogic domain).
I am getting the following error messages. Can some one help ??
java.lang.Exception: Failed to create "ejb/collaxa/system/DomainManagerBean" bean; exception reported is: "javax.naming.NameNotFoundException: While trying to lookup 'ejb.collaxa/system/DomainManagerBean' didn't find subcontext 'ejb' Resolved ; remaining name 'ejb/collaxa/system/DomainManagerBean'
at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:858)
at weblogic.jndi.internal.BasicNamingNode.lookupHere(BasicNamingNode.java:225)
at weblogic.jndi.internal.ServerNamingNode.lookupHere(ServerNamingNode.java:154)
at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:188)
at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:237)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:336)
at javax.naming.InitialContext.lookup(InitialContext.java:347)
at com.collaxa.cube.util.CXBeanRegistry.lookupDomainManagerBean(CXBeanRegistry.java:207)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:84)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:48)
at com.oracle.bpel.client.Locator.(Locator.java:59)
at jsp_servlet.__invokehelloworld._jspService(__invokehelloworld.java:139)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6350)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:96)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:48)
at com.oracle.bpel.client.Locator.(Locator.java:59)
at jsp_servlet.__invokehelloworld._jspService(__invokehelloworld.java:139)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6350)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
Thanks
Mahesh :)G'd morning petr,
check out 102.invokingProcesses tutorials but not the jsp one.. look into rmi, and into the context properties.. That should help figuring out what/s wrong .. (looks like you try an in-container lookup)
/clemens -
Invoking a BPEL process from a diffrent server.
Hello
I am trying to invoke a Bpel process from a diffrent server than the one where Soa Suite is installed and I am getting the folowing error:
java.lang.Exception: Failed to create "ejb/collaxa/system/DeliveryBean" bean; exception reported is: "javax.naming.NameNotFoundException: ejb/collaxa/system/DeliveryBean not found
at com.evermind.server.rmi.RMIClientContext.lookup(RMIClientContext.java:52)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:279)
at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:83)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
at Invoke.main(Invoke.java:35)
at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:293)
at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:83)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
at Invoke.main(Invoke.java:35)
The same client works fine when running it from the same machine where the Soa Suite is installed.
Does anyone know what can be the problem?
Regards Corneliuhi....
the same error is coming for me when i am in local server itself.
I am using Eclipse and BPEL server....
hereby i am attaching my code:
import com.oracle.bpel.client.Locator;
import com.oracle.bpel.client.NormalizedMessage;
import com.oracle.bpel.client.dispatch.IDeliveryService;
import java.util.Map;
import java.util.*;
import javax.naming.*;
public class initiate {
* @param args
public static void main(String[] args)
String xml="<ns1:BPELProcess1ProcessRequest xmlns:ns1=\"http://xmlns.oracle.com/BPELProcess1\">";
xml=xml+"<ns1:input>natraj</ns1:input>";
xml=xml+"</ns1:BPELProcess1ProcessRequest>";
try{
Locator loc = null;
Hashtable jndi = new Hashtable();
jndi.put(Context.PROVIDER_URL, "http://localhost:8888/BPELConsole");
jndi.put(Context.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory");
jndi.put(Context.SECURITY_PRINCIPAL, "oc4jadmin");
jndi.put(Context.SECURITY_CREDENTIALS, "oc4jadmin");
jndi.put("dedicated.connection", "true");
loc = new Locator("default", "bpel", jndi);
IDeliveryService deliveryService = (IDeliveryService)loc.lookupService(IDeliveryService.SERVICE_NAME );
NormalizedMessage nm = new NormalizedMessage();
nm.addPart("payload", xml);
//deliveryService.post("BPELProcess1", "initiate", nm);
NormalizedMessage res = deliveryService.request("BPELProcess1", "process", nm);
Map payload = res.getPayload();
System.out.println( "BPELProcess CreditRatingService executed!<br>" );
System.out.println( "Credit Rating is " + payload.get("payload") );
catch (Exception e)
System.out.println("Exception"+e);
//System.out.println( "BPELProcess initiated!" );
ERROR:
Exceptionjava.lang.Exception: Failed to create "ejb/collaxa/system/DeliveryBean" bean; exception reported is: "javax.naming.NamingException: Invalid provider URL
at com.evermind.server.rmi.RMIInitialContextFactory.getInitialContext(RMIInitialContextFactory.java:172)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:277)
at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:83)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
at initiate.main(initiate.java:54)
Please provide me a solution...
thanks in advance -
Invoking a BPEL Process from Java Class
Hi All,
I am new to BPEL. I am trying to invoke a BPEL Process using Java.
This following is the Oracle AS Home : D:\product\10.1.3.1\OracleAS_1
Credentials to access the default BPEL domain :
username - oc4jadmin
password - oc4jadmin
RMI Port in Oracle AS - 12401
(code)
import com.oracle.bpel.client.Locator;
import com.oracle.bpel.client.dispatch.IDeliveryService;
import com.oracle.bpel.client.NormalizedMessage;
import java.util.Hashtable;
import java.util.Map;
import javax.naming.Context;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
public class Class1 {
public static void main(String[] args) {
try {
Hashtable jndi = new Hashtable();
jndi.put(Context.PROVIDER_URL, "ormi://localhost:12401/orabpel");
jndi.put(Context.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory");
jndi.put(Context.SECURITY_PRINCIPAL, "oc4jadmin");
jndi.put(Context.SECURITY_CREDENTIALS, "oc4jadmin");
jndi.put("dedicated.connection", "true");
Locator locator = new Locator("default", "oc4jadmin", jndi);
System.out.println( "check 1" );
IDeliveryService deliveryService = (IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME );
System.out.println( "check 2" );
String xml = "<ssn xmlns=\"http://services.otn.com\" >111222333</ssn>";
NormalizedMessage nm = new NormalizedMessage( );
nm.addPart("payload", xml );
System.out.println( "check 3" );
NormalizedMessage res = deliveryService.request("CreditRatingService","process",nm);
System.out.println( "check 4" );
System.out.println( "BPELProcess CreditRatingService executed!" );
Map payload = res.getPayload();
Element part = (Element)payload.get("payload");
Node outputElement = part.getFirstChild();
System.out.println("Rating: " + outputElement.getNodeValue());
catch (Exception ex) {
ex.printStackTrace();
(code)
When I run this, I get the following exception :
D:\JDeveloper\jdk\bin\javaw.exe -client -classpath D:\JDeveloper\jdev\mywork\mywork\test_bpel_java\ViewController\classes;D:\JDeveloper\jakarta-struts\lib\struts.jar;D:\JDeveloper\jakarta-struts\lib\commons-beanutils.jar;D:\JDeveloper\jakarta-struts\lib\commons-collections.jar;D:\JDeveloper\jakarta-struts\lib\commons-fileupload.jar;D:\JDeveloper\jakarta-struts\lib\commons-digester.jar;D:\JDeveloper\jakarta-struts\lib\commons-lang.jar;D:\JDeveloper\jakarta-struts\lib\commons-logging.jar;D:\JDeveloper\jakarta-struts\lib\commons-validator.jar;D:\JDeveloper\jakarta-struts\lib\jakarta-oro.jar;D:\JDeveloper\j2ee\home\lib\ojsp.jar;D:\JDeveloper\j2ee\home\jsp\lib\taglib\ojsputil.jar;D:\JDeveloper\j2ee\home\oc4j.jar;D:\JDeveloper\j2ee\home\lib\oc4j-internal.jar;D:\JDeveloper\j2ee\home\lib\servlet.jar;D:\JDeveloper\jdev\lib\ojc.jar;D:\product\10.1.3.1\OracleAS_1\bpel\lib\orabpel.jar view.Class1
check 1
check 2
check 3
Mar 22, 2011 11:04:07 PM oracle.j2ee.rmi.RMIMessages EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER
WARNING: Exception returned by remote server: {0}
java.lang.NoClassDefFoundError: javax/ejb/EJBHome
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at oracle.oc4j.rmi.ClientRmiTypeCache$InterfaceTypeCache.getNamedInterfaces(ClientRmiTypeCache.java:98)
at oracle.oc4j.rmi.ClientRmiTypeCache$InterfaceTypeCache.getInterfaceType(ClientRmiTypeCache.java:85)
at oracle.oc4j.rmi.ClientRmiTypeCache.getCachedType(ClientRmiTypeCache.java:33)
at com.evermind.server.rmi.RMIClientConnection.getBoundObject(RMIClientConnection.java:981)
at com.evermind.server.rmi.RMIClientInputStream.resolveObject(RMIClientInputStream.java:26)
at java.io.ObjectInputStream.checkResolve(ObjectInputStream.java:1346)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
at com.evermind.server.rmi.RMIClientConnection.handleLookupResponse(RMIClientConnection.java:825)
at com.evermind.server.rmi.RMIClientConnection.handleOrmiCommandResponse(RMIClientConnection.java:283)
at com.evermind.server.rmi.RMIClientConnection.dispatchResponse(RMIClientConnection.java:242)
at com.evermind.server.rmi.RMIClientConnection.processReceivedCommand(RMIClientConnection.java:224)
at com.evermind.server.rmi.RMIConnection.handleCommand(RMIConnection.java:152)
at com.evermind.server.rmi.RMIConnection.listenForOrmiCommands(RMIConnection.java:127)
at com.evermind.server.rmi.RMIConnection.run(RMIConnection.java:107)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:814)
at java.lang.Thread.run(Thread.java:595)
Exception in thread "main" java.lang.NoClassDefFoundError: javax/ejb/EJBException
at com.oracle.bpel.client.util.ExceptionUtils.handleServerException(ExceptionUtils.java:76)
at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:254)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:83)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
at view.Class1.main(Class1.java:40)
Process exited with exit code 1.
I have used checkpoints in between the code. It works fine till the third one. After that, it raises an exception.
Can anyone help me out with this?
Edited by: 846458 on Mar 22, 2011 11:04 AMHi
Can you try with below code
package com.otn.samples;
import java.util.Properties;
import java.util.Map;
import javax.naming.InitialContext;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import com.collaxa.xml.XMLHelper;
import com.oracle.bpel.client.ClientDefs;
import com.oracle.bpel.client.Locator;
import com.oracle.bpel.client.NormalizedMessage;
import com.oracle.bpel.client.delivery.IDeliveryService;
public class CallBPEL
public static void main(String[] args) throws Exception {
if (args.length != 1) {
System.out.println(
"I am here");
return;
try{
String ssn = args[0];
System.out.println("ssn is " + ssn);
// properties in the classpath
Properties props = new java.util.Properties();
java.net.URL url = ClassLoader.getSystemResource("context.properties");
props.load(url.openStream());
System.out.println(props);
String xml = "<ssn xmlns=\"http://services.otn.com\">" + ssn + "</ssn>";
Locator locator = new Locator("default","bpel",props);
IDeliveryService deliveryService = (IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME );
// construct the normalized message and send to collaxa server
NormalizedMessage nm = new NormalizedMessage( );
nm.addPart("payload", xml );
NormalizedMessage res = deliveryService.request("CreditRatingService", "process", nm);
Map payload = res.getPayload();
System.out.println( "BPELProcess CreditRatingService executed!" );
Element partEl = (Element) payload.get("payload");
System.out.println( "Credit Rating is " + XMLHelper.toXML(partEl) );
}catch(Exception e)
e.printStackTrace();
}Thanks
AJ
Maybe you are looking for
-
Loding data to dso from flatfile
hi, while loading data to DSO from Flat file which fields should be mentiond in key fields and which fields should be mentioned in data fields.suppose,client,company code,record no,controllingarea,plant etc...... which flds sould be taken
-
MBA 10.9.4 Mail has been working fine, though slow sometimes and requiring restarts to check new Mail, but even that has failed today. Last couple days my internet connect has been from 2 different sources on the job temporarily. One behind a firewal
-
Trading partner agreement not found for the given input values
Hi, I am working on EDI X12 over generic exchange outbound. In enqueue script: replyToMsgID = from =TEE to =RF actionName =BASFEDI841 doctypeName =841 doctypeRevision =4010 msgType =1 payload =RF_841_4010_1_12.xml attachment= I am getting the Trading
-
Itunes gets a connection untrusted message and I can't scroll down to allow exception
I'm trying to download itunes (which I trust is a safe site) and get a connection is untrusted message. I click the "I understand the risks" but cannot scroll down to allow an exception.
-
Costing for shearing orders without BOM
The client is into sheet metal stamping. The input materials for pressing are steel sheets in different sizes. Each FG can be produced from only one specific sized sheet. These sheets are ideally to be procured directly in the required cut sizes. But