Invoking ODI Scenario from a BPEL process - Resolved
I new to Oracle products.
I am exploring Oracle Data Integrator tool.
I would like to call ODI scenario from a BPEL process.
I created a scenario in ODI, I have SOA suite10.1.3.3 installed in my machine.
In some portal I have read that, we need to deploy apache axis to Oracle App server and then deploy the ODI public web service to axis. This public web service facilitates us to call scenario from partner link.
Following are my questions:
1) I guess Oracle App server acts as webservice container too. Why should I use apache axis here?
2)If axis must be used, please let me know how to deploy it to OAS.
If axis is not required, please guide me how to deploy public web service to OAS.
Thanks!!
Hi:
I have similar problem, when invoke ODI Scenario from a BPEL Process, the error in ODI Designer is:
java.lang.NullPointerException
at com.sunopsis.dwg.dbobj.SnpSession.a(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.y(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSessionPreTrt(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.i(e.java)
at com.sunopsis.dwg.cmd.h.y(h.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Thread.java:595)
In the BPEL Console the result is OK and process complete, but in the INVOKE scenario send message:
<messages><ODI_REQUEST><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="part1"><invokeScenarioRequest xmlns="xmlns.oracle.com/odi/OdiInvoke/">
*<RepositoryConnection xmlns=""*
<JdbcDriver>oracle.jdbc.driver.OracleDriver</JdbcDriver>
<JdbcUrl>jdbc:oracle:thin:@192.168.1.109:1521:ORCL</JdbcUrl>
<JdbcUser>dimaster</JdbcUser>
<JdbcPassword>sabr0sa</JdbcPassword>
<OdiUser>SUPERVISOR</OdiUser>
<OdiPassword>SUNOPSIS</OdiPassword>
<WorkRepository>TESTWORKREP1</WorkRepository>
</RepositoryConnection>
*<Command xmlns="">*
<ScenName>P_TRASPASOSOP09</ScenName>
<ScenVersion>2</ScenVersion>
<Context>Global</Context>
<LogLevel>5</LogLevel>
<SyncMode>0</SyncMode>
<SessionName/>
<Keywords/>
<Variables>
<Name/>
<Value xmlns:ns1="http://xmlns.oracle.com/Recepcion">
<ns1:Escenario>P_TRASPASOSOP09</ns1:Escenario>
<ns1:Version>2</ns1:Version>
<ns1:Contexto>Global</ns1:Contexto>
<ns1:ID>1</ns1:ID>
<ns1:NivelLogeo>5</ns1:NivelLogeo>
</Value>
</Variables>
</Command>
*<Agent xmlns="">*
<Host>192.168.1.109</Host>
<Port>20910</Port>
</Agent>
</invokeScenarioRequest>
</part></ODI_REQUEST><ODI_RESPONSE><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="part1"><odi:invokeScenarioResponse xmlns:odi="xmlns.oracle.com/odi/OdiInvoke/">
<odi:CommandResultType>
<odi:Ok>true</odi:Ok>
<odi:SessionNumber>445000</odi:SessionNumber>
</odi:CommandResultType>
</odi:invokeScenarioResponse>
</part></ODI_RESPONSE></messages>
Similar Messages
-
Invoke ODI Scenario from BPEL Process
Hi:
My problem is when invoke ODI Scenario from a BPEL Process, the error in ODI Designer is:
Return Code 7000
java.lang.NullPointerException
at com.sunopsis.dwg.dbobj.SnpSession.a(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.y(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSessionPreTrt(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.i(e.java)
at com.sunopsis.dwg.cmd.h.y(h.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Thread.java:595)
In the BPEL Console the result is OK and process complete, but in the task INVOKE Scenario send message:
<messages><ODI_REQUEST><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="part1"><invokeScenarioRequest xmlns="xmlns.oracle.com/odi/OdiInvoke/">
<RepositoryConnection xmlns=""
<JdbcDriver>oracle.jdbc.driver.OracleDriver</JdbcDriver>
<JdbcUrl>jdbc:oracle:thin:@192.168.1.109:1521:ORCL</JdbcUrl>
<JdbcUser>dimaster</JdbcUser>
<JdbcPassword>sabr0sa</JdbcPassword>
<OdiUser>SUPERVISOR</OdiUser>
<OdiPassword>SUNOPSIS</OdiPassword>
<WorkRepository>TESTWORKREP1</WorkRepository>
</RepositoryConnection>
<Command xmlns="">
<ScenName>P_TRASPASOSOP09</ScenName>
<ScenVersion>2</ScenVersion>
<Context>Global</Context>
<LogLevel>5</LogLevel>
<SyncMode>0</SyncMode>
<SessionName/>
<Keywords/>
<Variables>
<Name/>
<Value xmlns:ns1="http://xmlns.oracle.com/Recepcion">
<ns1:Escenario>P_TRASPASOSOP09</ns1:Escenario>
<ns1:Version>2</ns1:Version>
<ns1:Contexto>Global</ns1:Contexto>
<ns1:ID>1</ns1:ID>
<ns1:NivelLogeo>5</ns1:NivelLogeo>
</Value>
</Variables>
</Command>
<Agent xmlns="">
<Host>192.168.1.109</Host>
<Port>20910</Port>
</Agent>
</invokeScenarioRequest>
</part></ODI_REQUEST><ODI_RESPONSE><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="part1"><odi:invokeScenarioResponse xmlns:odi="xmlns.oracle.com/odi/OdiInvoke/">
<odi:CommandResultType>
<odi:Ok>true</odi:Ok>
<odi:SessionNumber>445000</odi:SessionNumber>
</odi:CommandResultType>
</odi:invokeScenarioResponse>
</part></ODI_RESPONSE></messages>
You have response a problem?
Edited by: user2080320 on 16-oct-2008 11:18Hi,
I'm also trying to implement the scenario of invoking ODI from BPEL process. I need a document with the steps to guide me thru the whole process.
Thanks in advance!. -
How to invoke odi scenario from bpel without passing plain text password
Hi
We have following requirement,we would like to invoke odi scenario from oracle bpel process.But one problem is we dont want to pass the odi password as plain text.Please let me know how do i achive this task.
Thanks
BajiHi,
Thanks its working now. I am facing another issue. I do not use parameters in my Scenario. Now when i run my scenario i m getting the following error. I think its because i have not assigned anything to the Variable element. I guess its taking null value for Variable element here and cheking if such a variable exists. Have you come accross such an issue? If so, please sugest remedy.
java.lang.Exception: Specified variable not found in the Repository : null
at com.sunopsis.dwg.dbobj.SnpSession.a(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.y(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSessionPreTrt(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.i(e.java)
at com.sunopsis.dwg.cmd.h.y(h.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Thread.java:619)
Edited by: silas.john on May 13, 2009 1:29 AM -
Unable to invoke a EJB from a BPEL process
I am unable to invoke a EJB from a BPEL process. Whenever I try to test it from the oracle EM, I get the below exception. I am using WebLogic 10.3.3, SOA suite 11.1.1.3 and JDev 11.1.1.3 .
This is what I see from the EM....
Non Recoverable System Fault :
javaInterface attribute for the binding is missing or the inteface class is not available.
Below is a part of the stack trace from the soa server log…
Caused By: oracle.classloader.util.AnnotatedClassNotFoundException:
Missing class: com.abc.GreetingEJBBean
Dependent class: oracle.integration.platform.blocks.ejb.SDOEjbReferenceD
elegateImpl
Loader: sun.misc.Launcher$AppClassLoader@20929799
Code-Source: /C:/Oracle_latest/Middleware/home_11gR1/Oracle_SOA1/soa
/modules/oracle.soa.fabric_11.1.1/fabric-runtime.jar
Configuration: /C:/Oracle_latest/Middleware/home_11gR1/Oracle_SOA1/soa
/modules/oracle.soa.fabric_11.1.1/fabric-runtime.jar
Piece of xml from the composite.xml
<reference name="GreetingService"
ui:wsdlLocation="http://123.45.218.140:7001/GreetingEJBBean/GreetingEJBBeanService?wsdl">
<interface.wsdl interface="http://abc.com/#wsdl.interface(GreetingEJBBean)" />
<binding.ejb uri="GreetingEJB-GreetingEJB-GreetingEJB"
javaInterface="com.abc.GreetingEJB"/>
</reference>
Looks like its not able to find the javaInterface mentioned above.
I have a simple EJB with one business method and a very simple BPEL process.
@Stateless(name = "GreetingEJB", mappedName = "GreetingEJB-GreetingEJB-GreetingEJB")
@WebService
public class GreetingEJBBean implements GreetingEJB {
public GreetingEJBBean() {
public String greetUser(String name){
return ("Hello " + name);
Any help would be greatly appreciated.I haven't tried from a BPEL process, but I have had success (as in Lucas's blogs) of using services and references as EJB Java Interface. This is with EJB java interfaces solely of base types (i.e. String foo(String s)).
At high level here's what I have noted so far:
1. Per Lucas's blog, @javaInterface is not being added to the ejb.binding automatically but it's not clear to me when this is and is not required given that interface.java is specified for the reference or service. Would interface.java and @javaInterface ever be different? I've been adding @javaInterface manually anyways since Lucas is a smart guy and I'd rather avoid errors. :-)
2. Dropping an EJB interface jar in SCA-INF/lib works, but I've had the problem that the JDeveloper SOA Plugin doesn't see those classes until I stop and restart JDeveloper. Until then, I'm confronted with the java->wsdl mapping error. I was sort of primed to figure this one out since I ran into similar issues with SOA SpringBean components.
3. Dropping EJB interface source in SCA-INF/src is more reliable, because then I can build the project (i.e. create SCA-INF/classes) and the JDeveloper SOA Plugin seems to resolve these brand new classes immediately.
4. I've tried to invoke an EJB java-interface reference with a slightly complicated java interface (a class parameter with some fields, one of which is an array of another class). The auto-generated WSDL doesn't look exactly right to me (but I'm new to JAXB). Mediator maps to it just fine and the project compiles and deploys normally but fails at runtime. I have not researched in depth. It's not clear to me from the documentation and release notes whether I should expect for it to work, or whether I should expect to have to create my own JAXB mapping. If the latter, I really need a good example! -
Error while invoking ODI Scenario from BPEL
Hi,
I have created a BPEL process for invoking ODI Scenario as mentioned in the http://www.oracle.com/technology/obe/fusion_middleware/odi/ODIscenario_BPELcallback/ODIscenario_BPELcallback.htm
when i am deploying the process through console in i am getting this error Connection refused: connect..+
outputVariable>
-<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload">
-<ODIProcessResponse xmlns="http://xmlns.oracle.com/ODIService">
<conversationId>b7367ada046f7040:2c3c2fb3:123c698ac08:-7f49
</conversationId>
<result>Connection refused: connect
</result>
<elapsedTime>953
</elapsedTime>
<odiPlan>
========== OdiInformation =======
- mSyncMode :SYNC
- mScenarioName :TEST_INTERFACE
- mScenarioVersion:001
- mLogLevel :5
- mContext :GLOBAL
- mOdiHostname :localhost
- mOdiHostPort :20910
</odiPlan>
</ODIProcessResponse>
</part>
</outputVariable>
Regards,
Ezhilan R.Hi, how are you?
I did works including a parameter in my scenario and put value in this parameter on call scenario from BPEL. If i remove the parameter on the scenario and the call, its dont works.
Try include a parameter in your scenario. -
Problem while invoking ODI Scenario from BPEL
Hi,
I am trying to invoke a scenario from BPEL process through ODIPublicWebService.
When I initiate the process, its failing with following error message....
InvokeDeptAdmin_invokeScenario_OutputVariable>
-<part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="part1">
-<ns1:invokeScenarioResponse xmlns:ns1="xmlns.oracle.com/odi/OdiInvoke/">
<ns1:Ok>false
</ns1:Ok>
<ns1:SessionNumber>23101
</ns1:SessionNumber>
<ns1:ErrorMessage>Agent didn't execute this command:
</ns1:ErrorMessage>
</ns1:invokeScenarioResponse>
</part>
</InvokeDeptAdmin_invokeScenario_OutputVariable
I observed that its failing as I am not giving any input to optional parameters like
<xsd:element name="SessionName" minOccurs="0" type="xsd:string" />
<xsd:element name="Keywords" minOccurs="0" type="xsd:string" />
<xsd:element name="Variables" maxOccurs="unbounded" minOccurs="0" type="VariableType" />
I can see following empty tags in my Audit of BPELConsole....
<SessionName/>
<Keywords/>
<Variables/>
And null is being considered as a variable by the Agent and following Exception is thrown in the Operator
java.lang.Exception: Specified variable not found in the Repository : null
at com.sunopsis.dwg.dbobj.SnpSession.a(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.y(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSessionPreTrt(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.i(e.java)
at com.sunopsis.dwg.cmd.h.y(h.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Unknown Source)
Please let me know how can I overcome this problem
Appreciate earliest response.
Thanks!!!
Message was edited by:
user644377Hi, how are you?
I did works including a parameter in my scenario and put value in this parameter on call scenario from BPEL. If i remove the parameter on the scenario and the call, its dont works.
Try include a parameter in your scenario. -
Invoking ODI scenario from BPEL using Asynchronous callbacks
It has been given in many sites that for invoking an odi scenario, odi-public-ws.aar must be uploaded to AXIS2 framework as the web service uses AXIS2 as the web service container. For doing this first the AXIS2 should be deployed in OC4J.
I am working with a scenario like this. I didnt deploy AXIS2 and neither uploaded the odi-public-ws.aar. Still i am getting the result as success. BPEL is invoking the ODI scenario and callback is happening too.
I, also tried invoking ODI scenario in a remote system. Got the result for that too. I am using ODI 10.1.3.4 and J-Dev 10.1.3.3 and SOA suite 10.1.3.1.
Can anyone suggest how without AXIS2 framework the process is success?Hi,
Thanks its working now. I am facing another issue. I do not use parameters in my Scenario. Now when i run my scenario i m getting the following error. I think its because i have not assigned anything to the Variable element. I guess its taking null value for Variable element here and cheking if such a variable exists. Have you come accross such an issue? If so, please sugest remedy.
java.lang.Exception: Specified variable not found in the Repository : null
at com.sunopsis.dwg.dbobj.SnpSession.a(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.y(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSessionPreTrt(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.i(e.java)
at com.sunopsis.dwg.cmd.h.y(h.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Thread.java:619)
Edited by: silas.john on May 13, 2009 1:29 AM -
Invoking ODI Scenario from BPEL
Hi,
I tried invoking a scenario from BPEL. I started the agent before invoking the scenario. However I am getting the following error in the Agent
java.lang.NullPointerException
at com.sunopsis.dwg.dbobj.SnpScen.getObjectLst(SnpScen.java)
at com.sunopsis.dwg.dbobj.SnpScen.getScenarionByCodeAndVersion(SnpScen.java)
at com.sunopsis.dwg.cmd.DwgCommandScenario.b(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.prepare(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.t(e.java)
at com.sunopsis.dwg.cmd.h.y(h.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Thread.java:595)
java.lang.NullPointerException
at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.prepare(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.t(e.java)
at com.sunopsis.dwg.cmd.h.y(h.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Thread.java:595)
And i am getting the following error in BPEL Console
<remoteFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: oracle.j2ee.ws.saaj.ContentTypeException: Not a valid SOAP Content-Type: text/html; charset=iso-8859-1</summary>
</part></remoteFault>
I am not able to solve the issue. Request you all to help
Thanks and Regards.
Edited by: user10714505 on May 12, 2009 11:06 PMHi,
Thanks its working now. I am facing another issue. I do not use parameters in my Scenario. Now when i run my scenario i m getting the following error. I think its because i have not assigned anything to the Variable element. I guess its taking null value for Variable element here and cheking if such a variable exists. Have you come accross such an issue? If so, please sugest remedy.
java.lang.Exception: Specified variable not found in the Repository : null
at com.sunopsis.dwg.dbobj.SnpSession.a(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.y(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSessionPreTrt(SnpSession.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.i(e.java)
at com.sunopsis.dwg.cmd.h.y(h.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Thread.java:619)
Edited by: silas.john on May 13, 2009 1:29 AM -
Invoke ODI Scenario (11g) in BPEL (11g)
Hello -
I'm developing a BPEL process to load data from SQL Server to Oracle database using ODI . And after that I'm doing more orchestration in the BPEL process. I'm using
1) Oracle Data Integrator 11g (11.1.1.3)
2) Oracle SOA Suite 11g (Web Logic Server)
Have created a scenario in ODI 11.1.1.3 to read data from SQL Server and load into Oracle Database. I would like call this ODI scenario in BPEL 11g as a FIRST Activity.
Please help me the STEPS I need to
1) To expose the ODI scenario as a web service?
2) And to invoke ODI scenario in BPEL
3) Do I need configure/install public web services or anyother checks I need to do on ODI_server domain(WLS) to ensure it has all the components it need ?
Detailed steps are greatly appreciated
Thanks
BabuI hope you have found your answer but if not here are some pointers when working in the 11g ODI version. As far as I understand all generated scenarios will be exposed as a web service. ODI provides a small set of service methods available via the agent to invoke those services:
invokeStartScen
invokeRestartScen
getSessionStatus
getVersion
To get the WSDL for ODI, simply point your browser or partner descriptor to a running ODI agent: http://agentHost:port/oraclediagent/OdiInvoke?wsdl
For me running on my local host I can access both the Stand Alone or JEE agents on thier running ports:
Stand Alone running on 8886: http://localhost:8886/oraclediagent/OdiInvoke?wsdl
JEE running on 19001 deployed to WLS: http://localhost:19001/oraclediagent/OdiInvoke?wsdl
As you can see there is no difference between the two agents and they both return with the same list of operations:
<wsdl:binding name="InvokeRequestSOAP11Binding" type="odi:requestPortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
*<wsdl:operation name="invokeStartScen">*
<soap:operation soapAction="xmlns.oracle.com/odi/OdiInvoke/invokeStartScen" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
*<wsdl:operation name="getSessionStatus">*
<soap:operation soapAction="xmlns.oracle.com/odi/OdiInvoke/getSessionStatus" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
*<wsdl:operation name="getVersion">*
<soap:operation soapAction="xmlns.oracle.com/odi/OdiInvoke/getVersion" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
*<wsdl:operation name="invokeRestartSess">*
<soap:operation soapAction="xmlns.oracle.com/odi/OdiInvoke/invokeRestartSess" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
Once you have this then you can invoke the different methods from what ever tool you are using and here are some samples:
Getting the Version -- No Parameters are Required
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:odi="xmlns.oracle.com/odi/OdiInvoke/">
<soapenv:Header/>
<soapenv:Body>
<odi:getWebServiceVersionRequest/>
</soapenv:Body>
</soapenv:Envelope>
Invoking a Scenario -- Scenario: LD_ODI_CERTS Scenario Version: 5 Context: GLOBAL
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:odi="xmlns.oracle.com/odi/OdiInvoke/">
<soapenv:Header/>
<soapenv:Body>
<odi:OdiStartScenRequest>
<!--You may enter the following 2 items in any order-->
<Credentials>
<!--You may enter the following 3 items in any order-->
<OdiUser>SUPERVISOR</OdiUser>
<OdiPassword>SUPERVISOR</OdiPassword>
<WorkRepository>workrep</WorkRepository>
</Credentials>
<Request>
*<ScenarioName>LD_ODI_CERTS</ScenarioName>*
*<ScenarioVersion>005</ScenarioVersion>*
*<Context>GLOBAL</Context>*
<Synchronous>true</Synchronous>
<SessionName>LD_ODI_CERTS</SessionName>
<Keywords>WebService</Keywords>
<LogLevel>5</LogLevel>
</Request>
</odi:OdiStartScenRequest>
</soapenv:Body>
</soapenv:Envelope>
This is covered in section 14 of the Developers Guide for ODI ([Working with Web Services in Oracle Data Integrator|http://fmwdocs.us.oracle.com/doclibs/fmw/E14571_01/integrate.1111/e12643/web_services.htm#CJAJEBEJ]) and further expanded in section 19.7 ([Running Integration Processes|http://fmwdocs.us.oracle.com/doclibs/fmw/E14571_01/integrate.1111/e12643/running_executions.htm#BABDHJJF]).
If you need additional asistance with the creation of the scenario, well that is another question ;)
Edited by: Sydney on Oct 20, 2010 11:45 AM -
Invoke ODI scenario from Fusion ESS
Hi,
We have developed one ODI scenario as part of our project to migrate the data from source(oracle DB) to target(oracle DB).
We would need to call this ODI scenario from a ESS Job to migrate the data to target.
Can you please let us know, what job type need to be defined for ESS job and
how the ODI scenario can be invoked from the ESS job ?
ThanksCan you go to the command line from ESS?
Install the Agent only runtime client so its visible to ESS and run startcmd.sh in this format :
startcmd.sh OdiStartScen -SCEN_NAME=PURGE_OPERATOR_LOG -SCEN_VERSION=-1 -CONTEXT=GLOBAL -AGENT_CODE=DGDW_AGN
If you want to specify the agent.
or simply :
startscen.sh PURGE_OPERATOR_LOG -1 GLOBAL NAME=DGDW_AGN
if you are happy for the machine where the Agent software has been installed to orchestrate the job.
Failing that, you could look at invoking your scenario from web services ? -
How to invoke TaskService updateTask from within BPEL Process
Hi
I have to call the updateTask method defined within TaskService to update the BPEL payload. I initiate the Task in the same BPEL process but I want to update the payload somewhere down in the same BPEL process. Can someone assist me in finding out how I should do that without writing Java code? I want to know which task values I need to set before using the invoke activity and assigning the updateTask method to it.
Regards,
Jayesh
MCSE, MCSD, SCJP, PMPI saw a bug reported for this issue
here is the metalink
https://metalink.oracle.com/metalink/plsql/f?p=130:15:4302376104022705627::::p15_database_id,p15_docid,p15_show_header,p15_show_help,p15_black_frame,p15_font:BUG,5751185,1,1,1,helvetica
Bug No. 5751185
I have attached the text in metalink for those who do not have access to the metalink
Bookmark Fixed font Go to End Monitor Bug
Bug No. 5751185
Filed 08-JAN-2007 Updated 23-JAN-2007
Product Oracle(R) BPEL Process Manager Product Version 10.1.3.1
Platform Microsoft Windows XP Platform Version No Data
Database Version N/A Affects Platforms Generic
Severity Severe Loss of Service Status Code Bug (Response/Resolution)
Base Bug N/A Fixed in Product Version No Data
Problem statement:
(LOCAL) USERTASK FAILING WITH JAVAX.NAMING.NAMENOTFOUNDEXCEPTION TASKSERVICEBEAN
*** 01/08/07 03:24 pm *** When creating a usertask in BPEL 10.1.3.1 - I get 2 possible bindings - one SOAP based and the other one java based. When running locally the JAVA Binding is called - and fails with . < 2007-01-08 12:09:44,061> < ERROR> < oracle.bpel.services.workflow> < ::> java:comp/env/ejb/local/TaskServiceBean not found in ActivityManagerBean javax.naming.NameNotFoundException: java:comp/env/ejb/local/TaskServiceBean not found in ActivityManagerBean at com.evermind.server.ApplicationContext.lookupInJavaContext(ApplicationContext. java:306) at com.evermind.server.ApplicationContext.unprivileged_lookup(ApplicationContext. java:230) at com.evermind.server.ApplicationContext.lookup(ApplicationContext.java:195) at javax.naming.InitialContext.lookup(InitialContext.java:351) at oracle.bpel.services.workflow.task.client.TaskServiceLocalClient.initiateTask( TaskServiceLocalClient.java:48) at oracle.bpel.services.workflow.task.impl.TaskServiceWSIF.initiateTask(TaskServi ceWSIF.java:99) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at *** 01/08/07 03:27 pm *** After looking into the EJB refs of ActivityManagerBean .. exactly this one is missing .. . < session-deployment name="ActivityManagerBean" min-instances="50" location="ejb/collaxa/system/ActivityManagerBean" local-location="ejb_ob_engine_ActivityManagerBeanLocal" persistence-filename="ejb/collaxa/system/ActivityManagerBean.home_default_grou p_1"> < ejb-ref-mapping name="ejb/local/DispatcherLocalBean" /> < ejb-ref-mapping name="ejb/local/ProcessManagerLocalBean" /> < ejb-ref-mapping name="ejb/local/CubeDeliveryLocalBean" /> < ejb-ref-mapping name="ejb/local/MessageLocalBean" /> < ejb-ref-mapping name="ejb/local/ServerLocalBean" /> < resource-ref-mapping name="jms/collaxa/BPELInvokerQueueFactory" location="BPELjms/BPELInvokerQueueFactory" /> < resource-env-ref-mapping name="jms/collaxa/BPELInvokerQueue" location="BPELjms/BPELInvokerQueue" /> < /session-deployment> . and here are the missing entries .. . < ejb-local-ref id="EjbRef_ActivityManager_TaskServiceBean"> < ejb-ref-name>ejb/local/TaskServiceBean< /ejb-ref-name> < ejb-ref-type>Session< /ejb-ref-type> < local-home>oracle.bpel.services.workflow.task.ejb.TaskServiceLocalHome< /local -home> < local>oracle.bpel.services.workflow.task.ejb.TaskServiceLocal< /local> < ejb-link>TaskServiceBean< /ejb-link> < /ejb-local-ref> *** 01/08/07 03:27 pm *** (CHG: FixBy->10.1.3.3) *** 01/08/07 03:34 pm *** also in the orion-ejb-jar.xml < ejb-ref-mapping name="ejb/local/TaskServiceBean" /> . is missing *** 01/08/07 03:51 pm *** *** 01/18/07 09:22 am *** (CHG: Sta->16) *** 01/18/07 09:22 am *** *** 01/18/07 10:38 am *** (CHG: Confirmed Flag->Y) *** 01/18/07 10:38 am *** (CHG: Sta->11 Asg->NEW OWNER) *** 01/18/07 10:38 am *** *** 01/18/07 10:39 am *** (CHG: Asg->NEW OWNER) *** 01/23/07 01:09 pm *** (CHG: FixBy->10.1.3.4) *** 01/23/07 01:09 pm ***
. -
Hi Experts,
I have problem, when I invoke ODI scenario from a BPEL Process, the error in ODI Designer is:
java.lang.NullPointerException
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.bindSessVar(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.bindSessVar(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskPreTrt(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
at com.sunopsis.dwg.cmd.DwgCommandScenario.treatCommand(DwgCommandScenario.java)
at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
at com.sunopsis.dwg.cmd.e.i(e.java)
at com.sunopsis.dwg.cmd.g.y(g.java)
at com.sunopsis.dwg.cmd.e.run(e.java)
at java.lang.Thread.run(Thread.java:595)
Thanks in advance
Thanks
Phani
Edited by: Phanikanth on Jun 22, 2010 6:10 AMHi,
I'm also trying to implement the scenario of invoking ODI from BPEL process. I need a document with the steps to guide me thru the whole process.
Thanks in advance!. -
How to run ODI scenario from java?
I am new to java, need to do some testing on how to invoke ODI scenarios from java.
Can somebody drop me some simple code?
Thanks a lot,
LeiHi there
1. Start your agent (double click agent.bat)
2. generate scenario for ur package(right click ur package , select generate scenario)
3. Add the odi-sdk-invocation.jar file to your java project
ODIcmdScenario=new OdiCommandScenario();
ODIConnection=new OdiRepositoryConnection();
ODIConnection.setOdiUser("ur-username");
ODIConnection.setOdiPassword("ur-password");
ODIConnection.setJdbcDriver("Driverdetail");
ODIConnection.setJdbcUrl("url-details");
ODIConnection.setJdbcUser("dbusername");
ODIConnection.setJdbcPassword("dbpass");
ODIcmdScenario.setScenName("scenarioname");
ODIcmdScenario.setScenVersion("scenarioversion");
ODIcmdScenario.setLogLevel(5);
ODIcmdScenario.setContext("context");
ODIConnection.setWorkRepositoryCode("repository");
ODIInvocation = new OdiInvocation("hostname", 20910); //20910 default port
OdiInvocationResult result=ODIInvocation.invokeCommand(ODIcmdScenario,ODIConnection);
Hope this helps!
Cheers -
Invoking JDev bpel process from Eclipse BPEL Process?
Is it possible to invoke a bpel process (with dbadapter) developed in JDev from a bpel process created in Eclipse (Designer)?
I was unsuccessful.
Scenario:
I was trying to invoke jdev bpel process (that had a database adapter to update the database) from Eclipse bpel process (since we do not have adapters in Eclipse designer).
The namespace wasn't known by Eclipse( some schema missing?) and therefore we couldn't compile it. -
Unable to invoke EJB from a BPEL process.
Hello all
I am running BPEL process manager over weblogic 8.1 App server. I am trying to invoke a simple stateless session bean from a synchronous BPEL process. I have created a WSDL for this EJB with appropriate binding and service elements.
I am able to build my BPEL sync process and deploy it. But, when I run the process and invoke the EJB, I am getting the following exception-
BPEL Fault: {http://schemas.oracle.com/bpel/extension}bindingFaultCould not create instance for home 'ClusterableRemoteRef(-3059145150938040994S:172.26.210.17:[9700,9700,-1,-1,9700,-1,-1,0,0]:myorabpel:orabpelServer [-3059145150938040994S:172.26.210.17:[9700,9700,-1,-1,9700,-1,-1,0,0]:myorabpel:orabpelServer/288])/288'; nested exception is:
java.lang.NoSuchMethodException: com.carlson.sample.HelloWorldSessionBean_n4vx3i_HomeImpl_812_WLStub.create()
I have a home interface for the EJB which has a 'create' method and my session bean has a ejbCreate method. I am using weblogic.appc to create the stubs and skeletons for the EJB.
Has anyone tried this ?? The tutorial in the download 702.bindings/EJBBinding does something similar to this. But, I am having problems with that too.
Any comments, advice, sample code will be helpful.
Thanks a bunch
- Mahesh :)I have deployed my Bean Managed Persistance Entity Bean in Weblogic 8.1 App Server. Trying to access the ejb from Synchronous BPEL process. I tried in two ways
1. By accessing the ejb directly from BPEL process, writing the following code in BPEL process
<bpelx:exec xmlns:bpelx="http://schemas.oracle.com/bpel/extension" language="java" version="1.4" name="InventoryEJB">
<![CDATA[
// Java code snippet
try{
Hashtable properties = new Hashtable();
properties.put(InitialContext.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
properties.put(InitialContext.PROVIDER_URL, "t3://PCIIB07447:7001");
InitialContext context = new InitialContext(properties);
InventoryHome home = (InventoryHome) context.lookup("Inventory");
InventoryRemote remote = home.create();
int status = remote.getInventory("Chevrolet","2-Door Coupes","Chevy Cobalt",5);
addAuditTrailEntry("Status is: " + status);
setVariableData("output", "payload",
"/status", new Integer(status));
catch(Exception e){}
]]>
</bpelx:exec>
Also copied the interface files in system\classes directory. I got the expected output but i am not able to view the "Visual Flow". Getting the following error in my BPEL server console
<Sep 9, 2004 12:46:51 PM IST> <Warning> <RMI> <BEA-080003> <RuntimeException thr
own by rmi server: weblogic.management.internal.RemoteMBeanServerImpl.invoke(Lja
vax.management.ObjectName;Ljava.lang.String;[Ljava.lang.Object;[Ljava.lang.Strin
g;)
weblogic.management.NoAccessRuntimeException: Access not allowed for subject: p
rincipals=[], on ResourceType: ServerConfig Action: execute, Target: lookupServe
rRuntime.
weblogic.management.NoAccessRuntimeException: Access not allowed for subject: pr
incipals=[], on ResourceType: ServerConfig Action: execute, Target: lookupServer
Runtime
at weblogic.management.internal.SecurityHelper$IsAccessAllowedPrivilegeA
ction.wlsRun(SecurityHelper.java:564)
at weblogic.management.internal.SecurityHelper$IsAccessAllowedPrivilegeA
ction.run(SecurityHelper.java:456)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
dSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
118)
at weblogic.management.internal.SecurityHelper.isAccessAllowed(SecurityH
elper.java:350)
at weblogic.management.internal.RemoteMBeanServerImpl.private_invoke(Rem
oteMBeanServerImpl.java:946)
at weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBean
ServerImpl.java:908)
at weblogic.management.internal.RemoteMBeanServerImpl_WLSkel.invoke(Unkn
own Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
dSubject.java:353)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
144)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
a:415)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
.java:30)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
2. The other way i used WSIF frame work, but i could not resolved.
Thanks for your help in advance.
Maybe you are looking for
-
XML C v2 is not backward compatible with 8.1.5 o NT
I have Oracle8i (8.1.5) installed on Windows NT. And the XML C parser v2 I got contain oracore8.dll & oranls8.dll (8.1.6). Somehow these two DLLs does not work with my 8.1.5 environment since I was not able to connect to DB once I used these DLLs. I
-
I'm trying to add a region.addobserver and addEventListener to spry regions so the links; that come for a external feed, opens in a new(default browser) window when clicked. The on* events in regions do not work in AIR so, is there a way to do this?
-
Movie Get aims to be a simple console script allowing a user to download embeded movies from various video hosting services. It uses common *nix programs to download the file and convert it from flv to mpg format. The main work of mget is to get the
-
Hi Everyone, I just restored my controlfile from autobackup in RMAN and after mounting the database with the restored controlfiles, I took a backup of archivelog and in the end a warning message has been displayed saying that the controlfile autoback
-
Filter data as per user autorisation in Bex Broacasting
Hi All, I want to broadcast a work book to a user as per his autorization. I add his user id to "Authrization user" field in setting page. however it seems that system is using my autorisation to broadcast workbook. I have google it and found one sug