CRM and ESB Integratio - Invoking ESB Process using HTTP transport
We have a CRM application that communicates to another application using HTTP transport ( basically sends XML doc). Now We have requirement that the CRM App need to communicate with ESB Process. Please advise me what adapter should I use in ESB ? Is there any custom adapter ?
Thanks in adavnce..
Monica
It depends on the protocol supported on the ESB. If it is SOAP over http you need some client stubs in your application to be able to communicate via SOAP. I'd start with checking Axis or Xfire.
Similar Messages
-
Error invoking bpel process using axis client
When I am trying to invoke bpel process using axis client I'am having following error:
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: org.xml.sax.SAXException: Bad envelope tag: html
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace: org.xml.sax.SAXException: Bad envelope tag: html
at org.apache.axis.message.EnvelopeBuilder.startElement(EnvelopeBuilder.java:109)
at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:976)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:376)
at org.apache.axis.client.Call.invokeEngine(Call.java:2583)
at org.apache.axis.client.Call.invoke(Call.java:2553)
at org.apache.axis.client.Call.invoke(Call.java:1753)
at com.oracle.sample.ws.ArrayClient.main(ArrayClient.java:44)
org.xml.sax.SAXException: Bad envelope tag: html
at org.apache.axis.AxisFault.makeFault(AxisFault.java:129)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:543)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:376)
at org.apache.axis.client.Call.invokeEngine(Call.java:2583)
at org.apache.axis.client.Call.invoke(Call.java:2553)
at org.apache.axis.client.Call.invoke(Call.java:1753)
at com.oracle.sample.ws.ArrayClient.main(ArrayClient.java:44)
Caused by: org.xml.sax.SAXException: Bad envelope tag: html
at org.apache.axis.message.EnvelopeBuilder.startElement(EnvelopeBuilder.java:109)
at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:976)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:345)
at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538)
... 5 more
My client code is following:
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL("http://localhost:9700/orabpel/default/Array"));
SOAPEnvelope env = new SOAPEnvelope();
Name bodyName = env.createName("ArrayRequest", "tns", "http://localhost/");
SOAPBodyElement request = body.addBodyElement(bodyName);
Name childName = env.createName("input","tns","http://localhost/");
SOAPElement input = request.addChildElement(childName);
input.addTextNode("ORCL");
call.invoke(env);
MessageContext mc = call.getMessageContext();
System.out.println("\n============= Response ==============");
XMLUtils.PrettyElementToStream(mc.getResponseMessage().getSOAPEnvelope().getAsDOM(), System.out);
I'am having the same error with client generated by wsdl2java.
RegardsHi -
A few things that you may want to try to troubleshoot this issue:
1) Run our sample of calling a BPEL process from Axis, located in:
C:\orabpel\samples\interop\axis\AXISCallingSyncBPEL
2) Run your client through a TCP tunnel to see the specific SOAP request message that is being sent to the BPEL process and the SOAP response that is being generated. This should help you determine which side of the communication is causing the problem, as well as to rule out proxy server or other issues that are very common problems for this situation.
Dave -
Invoking page process using AJAX
Hi,
Is it possible to invoke page process using AJAX, just like I can do it with application processes?
Regards,
PrzemekHi,
Could you not have a application process that does an execute immediate on a block of PL/SQL? This way in your app process you could extract the code from your page process.
So your code would like something like:
SELECT region_source
INTO v_plsql_source
FROM apex_application_page_regions
WHERE source_type = 'PL/SQL'
AND application_id = :app_id
AND page_id = :app_page_id
AND static_id = :your_static_id; -- or you could reference from region name etc...
execute immediate (v_plsql_source);
I'm not sure if you'll have any issue with bind variables in v_plsql_source
Martin
[http://apex-smb.blogspot.com/] -
How to invoke BPEL process via HTTP POST (or GET)
Hi,
I'd like to know how to invoke BPEL process via HTTP POST (or GET), is there anyway simple to do it?
Thank youLook at my blog http://orasoa.blogspot.com search for plsql
or use SoapUI.org
or look in the Examples directory in the BPEL directory of the installation -
I want Bpel and ESB process PDF
Hi all,
This is navin, I new to SOA BPEL and ESB, so could you plz provice any pdf's links to me..
Thanks in Advance,
NavinHi Navin,
SOA 11g documentation is here:
http://download.oracle.com/docs/cd/E17904_01/ipu.htm
You can easily find there links to PDF version.
E.g. BPEL pdf is here
http://download.oracle.com/docs/cd/E17904_01/integration.1111/e10224.pdf
10g version is here:
http://www.oracle.com/technetwork/documentation/appserver1013-101821.html
Regards,
Milan -
How to invoke BPEL process using Oracle Business Event System (BES)?
Hi,
I want to invoke a BPEL process using Business Events and Subscriptions (Oracle BES/Workflow). If anyone knows how this can be done, please reply to this thread. You can also mail me at [email protected]
Thanks,
Gaurav.yeah you are 100% correct ..
I have attached some stuff for CDH integration, where we used plsql to send out info on a created record to a queue.
CREATE OR REPLACE
TYPE XXBPEL_MESSAGE_TYPE AS OBJECT (
MSG_ID VARCHAR2(128),
INREPLYTO_MSG_ID VARCHAR2(128),
FROM_PARTY VARCHAR2(512),
TO_PARTY VARCHAR2(512),
ACTION_NAME VARCHAR2(512),
MSG_TYPE INT,
PAYLOAD CLOB,
ATTACHMENT BLOB
EXECUTE DBMS_AQADM.create_queue_table (queue_table => 'XXBPEL_QTAB',queue_payload_type => 'XXBPEL_MESSAGE_TYPE',multiple_consumers => TRUE);
EXECUTE DBMS_AQADM.create_queue (queue_name => 'XXBPEL_OUT_QUEUE',queue_table => 'XXBPEL_QTAB');
EXECUTE DBMS_AQADM.start_queue(queue_name => 'XXBPEL_OUT_QUEUE',dequeue => TRUE,enqueue => TRUE);
On BPEL side creata a process that listens to this queue (with and AQ partnerlink) as shown in $BPEL_HOME/integration\orabpel\samples\tutorials\124.AQAdapter\MulticonsumerInbound
thx clemens -
Invoke BPEL process using a java client - NullPointer Exception
Hi, We are trying to call a BPEL process using a java client from our Web Application. For some reason the BPEL engine just logs a NullPointerException and exits.
The same SOAP request when through SOAP UI tool works great.
Any help in resolving this is highly appreciated!
We are getting the below exception--
<2006-09-22 09:40:53,687> <DEBUG> <default.collaxa.cube.ws> SOAPRequestProvider
java.lang.NullPointerException
at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processBPELMessage(SOAPRequestProvider.java:269)
at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processMessage(SOAPRequestProvider.java:129)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:869)
at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:460)
at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
-----------------Hi, We are trying to call a BPEL process using a java client from our Web Application. For some reason the BPEL engine just logs a NullPointerException and exits.
The same SOAP request when through SOAP UI tool works great.
Any help in resolving this is highly appreciated!
We are getting the below exception--
<2006-09-22 09:40:53,687> <DEBUG> <default.collaxa.cube.ws> SOAPRequestProvider
java.lang.NullPointerException
at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processBPELMessage(SOAPRequestProvider.java:269)
at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processMessage(SOAPRequestProvider.java:129)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:869)
at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:460)
at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
----------------- -
Invoke BPEL process using a java client - NullPointerException
Hi, We are trying to call a BPEL process using a java client from our Web Application. For some reason the BPEL engine just logs a NullPointerException and exits.
The same SOAP request when through SOAP UI tool works great.
Any help in resolving this is highly appreciated!
We are getting the below exception--
<2006-09-22 09:40:53,687> <DEBUG> <default.collaxa.cube.ws> SOAPRequestProvider
java.lang.NullPointerException
at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processBPELMessage(SOAPRequestProvider.java:269)
at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processMessage(SOAPRequestProvider.java:129)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:869)
at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:460)
at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
-----------------Hi,
Please ensure that you include the SOAP Header "SOAPAction" in your request. Most importantly, the value for that should be enclosed within double quotes.
For eg;
req.setRequestHeader("SOAPAction", '"process"'); -
Invoking BPEL process using JSP.
HI,
I m trying to invoke my BPEL process using JSP. When tried to invoke, Webpage doesnt display any message.
This is the error, I could collect from log file:
<PAYLOAD>
<MSG_TEXT>ServletException cause</MSG_TEXT>
<SUPPL_DETAIL><![CDATA[com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is null. Please check the process instance for detail.
at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:109)
at sun.reflect.GeneratedMethodAccessor96.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 com.evermind.server.ThreadState.runAs(ThreadState.java:620)
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.request(Unknown Source)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:104)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
at _InvokeDemo__BPEL._jspService(_InvokeDemo__BPEL.java:85)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at com.collaxa.cube.fe.DomainFilter.doFilter(DomainFilter.java:116)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:619)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
Caused by: com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is null. Please check the process instance for detail.
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequestAnyType(DeliveryHandler.java:528)
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequest(DeliveryHandler.java:451)
at com.collaxa.cube.engine.delivery.DeliveryHandler.request(DeliveryHandler.java:125)
at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:95)
... 46 more
]]></SUPPL_DETAIL>
</PAYLOAD>
</MESSAGE>
My BPEL process is a simple process, to get the value from receiver and pass to ouput.
Could someone tell me how to resolve this error....
Thanks in Advance
AjayI am having a similar issue while invoking webservice in ODI I am getting following error. Let me how did you resolve your issue.
com.sunopsis.wsinvocation.SnpsWSInvocationException: com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is null. Please check the process instance for detail.
at com.sunopsis.wsinvocation.client.a.a.d.requestReply(d.java)
at com.sunopsis.graphical.wsclient.f.b(f.java)
at com.sunopsis.graphical.tools.utils.swingworker.v.call(v.java)
at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
at com.sunopsis.graphical.tools.utils.swingworker.l.run(l.java)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)
Caused by: com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is null. Please check the process instance for detail.
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.parseInternal(Unknown Source)
at org.apache.crimson.parser.Parser2.parse(Unknown Source)
at org.apache.crimson.parser.XMLReaderImpl.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:1792)
at com.sunopsis.wsinvocation.client.a.a.d.a(d.java)
... 8 more
Caused by:
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server
faultSubcode:
faultString: com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is null. Please check the process instance for detail.
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is null. Please check the process instance for detail.
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.parseInternal(Unknown Source)
at org.apache.crimson.parser.Parser2.parse(Unknown Source)
at org.apache.crimson.parser.XMLReaderImpl.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:1792)
at com.sunopsis.wsinvocation.client.a.a.d.a(d.java)
at com.sunopsis.wsinvocation.client.a.a.d.requestReply(d.java)
at com.sunopsis.graphical.wsclient.f.b(f.java)
at com.sunopsis.graphical.tools.utils.swingworker.v.call(v.java)
at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
at com.sunopsis.graphical.tools.utils.swingworker.l.run(l.java)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)
{http://xml.apache.org/axis/}hostname:sullah-us
com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is null. Please check the process instance for detail.
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.content(Unknown Source)
at org.apache.crimson.parser.Parser2.maybeElement(Unknown Source)
at org.apache.crimson.parser.Parser2.parseInternal(Unknown Source)
at org.apache.crimson.parser.Parser2.parse(Unknown Source)
at org.apache.crimson.parser.XMLReaderImpl.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:1792)
at com.sunopsis.wsinvocation.client.a.a.d.a(d.java)
at com.sunopsis.wsinvocation.client.a.a.d.requestReply(d.java)
at com.sunopsis.graphical.wsclient.f.b(f.java)
at com.sunopsis.graphical.tools.utils.swingworker.v.call(v.java)
at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
at com.sunopsis.graphical.tools.utils.swingworker.l.run(l.java)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source) -
Invoke a Process Over HTTP using a Document
I have created a servlet to accept a PDF submission and invoke a process by passing the same PDF, using an EJB endpoint. Has anyone done this? I need to know whether the InputStream needs to be serialized? if yes, how?
AdityaIts been a while, but I remember using the ServletUtils.getRequestBufferAsBytes to process the request object before I could create a com.adobe.idp.Document object:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
byte[] content = ServletUtils.getRequestBufferAsBytes(request);
Document uploadedDoc = new Document(content); -
Invokation of Webservices using HTTP
Can I invoke webservices in SAP using HTTP instead of SOAP? If so How?
Hi Vijay,
yes we can do it with HTTP
Configuring the Receiver Plain HTTP Adapter
Use
The plain HTTP outbound channel is a service provided by the Integration Engine. The system is addressed when technical routing determines a corresponding communication channel for the logical receiver from logical routing. The system sends the payload of the message to an HTTP address using HTTP, without being enhanced with an envelope.
Integration
You configure the adapter on the Parameters tab page during the definition of a communication channel in the Integration Server.
Activities
The plain HTTP adapter gives the receiver system the following specifications:
Transport Protocol
HTTP 1.0
Message Protocol
XI payload in HTTP body
Adapter Engine
Integration Server
Addressing Type
URL Address
HTTP Destination
Specify the target host, service number, and path prefix including query string:
http://<hostname:port>/<path>?<query-string>
You can identify the target host (HTTP port) of a SAP Web Application Server using the ICM monitor.
Host and port of the HTTP proxy (optional if there is a firewall between the plain HTTP adapter and the receiver system)
Authentication data for the receiver system, see also: transaction Display and Maintain RFC Destinations (SM59)
Specify the RFC destination.
Parameters from the Communication Channel for Technical Routing
● Content type (the entry text/XML is expected as default)
Specifies the content format (payload) that the message should have.
● (Optional) header fields for the receiver-specific protocol
● Select Additional Query String Attributes:
○ Sender party
○ Sender service
○ Receiver interface
○ Message ID
○ Quality of service
○ Queue ID
The queue ID is only required if the quality of service is EOIO.
● Specifications for payload manipulation
○ XML code (default UTF-8)
Specifies the character set.
○ URL escaping
Presents the XML in a URL-enabled format.
Special characters that could be interpreted as control characters are replaced with escape characters (masked).
○ Prolog
Enhances the payload for particular servers (optional, see below).
○ Epilog
Enhances the payload for particular servers (optional, see below).
Adapter-Specific Message Attributes
● To evaluate adapter attributes in the message header of the XI message, select Set Adapter-Specific Message Attributes.
● If you want missing message attributes to trigger an error message, select Fail If Adapter-Specific Message Attributes Missing.
If the indicator is set and the header for adapter-specific message attributes or one of the set attributes is missing from the message, this leads to a system error (red flag).
If you do not set the indicator, and message attributes are missing, the adapter accesses information from the adapter configuration.
● If you want to use an HTTP destination or URL set by the mapping, select URL orHTTP Destination.
(The indicator displayed depends on the Addressing Type you selected above). If you set the indicator, the URL or HTTP destination set dynamically is called by HTTP.
If the message header does not contain the URL or the HTTP destination, and you have set the Fail If Adapter-Specific Message Attributes Missingindicator, the XI message is set to status System Error.
If you do not set the indicator, the URL or HTTP destination defined statically in the communication channel is used.
The technical names of the fields are:
○ URL: TargetURL
○ HTTP Destination: HTTPDest
● If you want to use HTTP header fields, select Apply HTTP Header Fields and enter the fields in Field 1 to Field 6.
The fields are embedded in the HTTP request under the names you enter here.
The technical names of the fields are HeaderFieldOne, .... HeaderFieldSix.
● If you want to use URL parameters, select Apply URL Parameters and enter the parameters in the fields Parameter 1 to Parameter 6.
The parameters are included in the HTTP request under the names specified here.
The technical names of the fields are URLParamOne, u2026, URLParamSix.
● If you want to save HTTP header fields from the synchronous response in the XI message header, choose HTTP Header Fields (Synchronous Response) and enter the fields in the fields Field 1 to Field 6.
The fields must have the same names as the fields that are also to be sent in the HTTP response.
The technical names of the fields are HeaderFieldOne,...,HeaderFieldSix.
● The attribute namespace for the adapter is http://sap.com/xi/XI/System/HTTP. -
Invoking BPEL Process as a Web Service via AJAX / JavaScript
So, I am able to invoke the BPEL process using the console with a nice XML SOAP fragment. If I take the same fragment and try to invoke the process using JavaScript, I get a NullPointerException:
<2007-04-03 08:31:24,433> <DEBUG> <default.collaxa.cube.ws> SOAPRequestProvider
java.lang.NullPointerException
at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProviderHelper.getSOAPAction(SOAPRequestProviderHelper.java:431)
at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processBPELMessage(SOAPRequestProvider.java:231)
at com.collaxa.cube.ws.soap.oc4j.SOAPRequestProvider.processMessage(SOAPRequestProvider.java:129)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:869)
at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:460)
at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:396)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:410)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
Am I missing something here??? I have injected TCP-Mon into the mix and it is showing me the exact same message going to the web service.
The message information that is sent looks like:
POST /orabpel/default/C3eFormInitiation/1.0 HTTP/1.1
Accept: */*
Accept-Language: en-ca
Referer: file://G:\Brad\eformInitiation\eformInitiation.html
Content-Type: text/xml; charset=UTF-8
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; InfoPath.1; FDM)
Host: d0027200.idir.bcgov:8081
Content-Length: 1264
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: oracle.uix=0^^GMT-8:00
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:q0="http://pssg.gov.bc.ca/c3/eForms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<q0:formInitiationProcessRequest>
<q0:locationCd>VIRCC</q0:locationCd>
<q0:initiatorUserId>bxworsfo</q0:initiatorUserId>
<q0:parentDocId>0</q0:parentDocId>
<q0:submittedForms>
<q0:submittedForm>
<q0:primaryForm>Y</q0:primaryForm>
<q0:assignmentDetails>
<q0:assigneeId>bxworsfo</q0:assigneeId>
<q0:assigneeTypeCd>U</q0:assigneeTypeCd>
<q0:docTypeCd>IACF</q0:docTypeCd>
<q0:docTypeVersion>1.0</q0:docTypeVersion>
</q0:assignmentDetails>
<q0:workflowDetails>
<q0:docId>n/a</q0:docId>
<q0:docFolderPrefixCd>n/a</q0:docFolderPrefixCd>
<q0:docFolderSeq>n/a</q0:docFolderSeq>
<q0:docSeq>n/a</q0:docSeq>
<q0:workflowTaskURL>n/a</q0:workflowTaskURL>
<q0:workflowDisplayFormIdentifier>n/a</q0:workflowDisplayFormIdentifier>
</q0:workflowDetails>
</q0:submittedForm>
</q0:submittedForms>
</q0:formInitiationProcessRequest>
</soapenv:Body>
</soapenv:Envelope>
To invoke the web service, we are just using the JavaScript code that has been generated by BPEL Process Manager. The call looks like:
function invokeSync (url, xmlDoc) {
var req = null; if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.open("POST", url, false);
req.setRequestHeader("Content-Type", "text/xml");
req.send(xmlDoc);
return req.responseXML;
I have been able to invoke other web services using exactly the same function. They all seem fine.
I am even able to use an AXIS type client to invoke the BPEL web service from Eclipse.
Advice??? This definitely appears to be some sort of bug?
Thanks,
BradWcheck out 102.InvokingProcess/ws tutorial .. which uses axis .. or generate the client based on the wsdl that you can retrieve from the bpel console / click on the process/ and then wsdl tab ..
hth clemens -
Invoking bpel process from java in oracle soa/bpm 11g
Hi,
We have some java code to invoke bpel process in oracle BPM 10g following the instructions in http://download-east.oracle.com/docs/cd/B14099_19/integrate.1012/b14448/invoke.htm.
Basically the steps are:
1) get a Locator (com.oracle.bpel.client.Locator)
2) get IDeliveryService (com.oracle.bpel.client.delivery.IDeliveryService) reference from locator
3) call IDeliveryService method request or post with input message and get the response back.
Recently we want to migrated from oracle bpm 10g to oracle soa/bpm 11g. But I can not find the similar API in 11g. It seems now some adapter/binding need to be added in exposed service lane in soa composite view, for example, ADF-BC, direct binding etc, in order to allow java to invoke a bpel process. Here are two very useful links from Edwin about the detail how this is implemented.
http://biemond.blogspot.com/2009/11/invoking-soa-suite-11g-service-from.html
http://biemond.blogspot.com/2009/11/calling-soa-suite-direct-binding.html?showComment=1285198033913#comment-c1055322845511794252
My question is:
1) what are the choices and the official/best way to invoke a bpel process in oracle soa/bpm 11g from java?
2) does user need to add an adapter/binding in exposed service lane in order to let the bpel service be called in java?
3) what is the real difference between a bpm application and soa application in 11g?
I will really appreciate any expert's opinion.
Thanks,
BinThanks for your reply and confirmation, really appreciate it.
Yes, I found the difference of the invoking process API and was able to invoke bpel process using direct and ADF-BC binding by following Edwin's blog. But I have not found any official reference to compare this API difference between 10g and 11g ( I will mark this question as answered if anyone can find an official source from oracle, need to prove it to the team). The API to work with human task workflow seems pretty much the same between 10g and 11g. -
Multiple address between CRM and IS Retail
Hi Gurus,
In CRM we are maintianing multiple address function for 1 BP but Retail does not has, how to link it between CRM and Retail?
regards
KannanHi All,
The major thing is we should not use ISU as stativ and CRM dynalic system. As we all aware When SAP is launching any module or technology its beleives in re-usabilty.
Now the issue data replecation between CRM and ISU-
1. In a utility market if the customer,retailer and the network operator initiate any business flow they should start with CRM as CRM is handling FOP part.It means CRM has not only build only for ISU.
2. In ISU before billing so many things is getting triggered - like new connecion,transfer,move-in,move-out etc....these process cant be done with the CRM business module as I mentioned earlier CRM is not only designed for IS-U
So for a smoother process and with proper business SAP introduced CRM IS-U.
Without replacting the data between CRM and IS-U we cant process the steps which will at last billed a customer.
Regards.
Abinash -
Why replicate Master Data between CRM and IS-U?????
Hello colleagues,
I am at a customer who is already replicating Business Partner and Contract Accounts between CRM 5.0 and IS-U (ECC 6.0).
He is using CRM IC WinClient where most of the processes are implemented as transaction calls in IS-U.
There is a possibility to replicate all objects (Accounts, Connection Objects and Installations) but what is the purpose of doing it.
Could anybody tell me what is the advantage of replicating all objects and having them redundant?
Why to replicate?
I just found information on how to replicate but not why.
Thank you very much for your help in advance,
Edgar KauterHi All,
The major thing is we should not use ISU as stativ and CRM dynalic system. As we all aware When SAP is launching any module or technology its beleives in re-usabilty.
Now the issue data replecation between CRM and ISU-
1. In a utility market if the customer,retailer and the network operator initiate any business flow they should start with CRM as CRM is handling FOP part.It means CRM has not only build only for ISU.
2. In ISU before billing so many things is getting triggered - like new connecion,transfer,move-in,move-out etc....these process cant be done with the CRM business module as I mentioned earlier CRM is not only designed for IS-U
So for a smoother process and with proper business SAP introduced CRM IS-U.
Without replacting the data between CRM and IS-U we cant process the steps which will at last billed a customer.
Regards.
Abinash
Maybe you are looking for
-
Error when adding image in-line with text
When using some of my templates I have no problem in putting a small graphic (a pdf icon) in-line with text. Yet with others the insertion of the same small graphic forces a newline before and after the graphic. If the text and image is placed in an
-
OpenScript is able to open Recording window, but, it's not recording
Hi, I am very new bie to this forum and for automation tool like OpenScript9.0 as well. I happen to work on the above tool, so I could installed it and trying to record the web application for the Load Test, but after completion of the recording I ST
-
URGENT : Pls help on Personnel Calculation Rules
Hello Gurus, I am creating new rule to change the attendance type depending on the holiday. What is the operation/function should I use. Senaio: There is a 'Holiday Hrs Worked' attendance type and this has to be used ONLY when an emp is working on a
-
Why can't I wake up my mac book pro
Why does my mac book pro keep going to sleep? I can't wake it up.
-
QuickTime Control Panel causes BSOD
Installed the Quicktime 7.6.5. All went well (or so I thought). The next day on bootup, I received a notification that a driver condition caused a blue screen. O checking in the system logs, I found the actual problem was QuickTime control panel, so