Papi WS Notifcation using Correlation
Hi,
is there any way to notify a process instance via Papi WS using correlations in just one call? I saw that there is an operation for sending a notification, but it seems to accept only the instance id. Of course, I can make beforehand a call to getInstanceByCorrelation to find out the instance id and then pass it to the notification operation, but is there a kind of combined operation to do that?
Thanks a lot and regards
Matthias
Hello,
I have the same problem. My process has a Notification Wait exposed as a Web Service, but into the WSDL the method I would use to notify the process is described like this:
<xsd:element name="notify">
<xsd:complexType>
<xsd:sequence>
<xsd:element type="xsd:string" name="sessionId"/>
<xsd:element type="xsd:string" name="instanceId"/>
<xsd:element type="xsd:long" name="codeArg"/>
<xsd:element type="xsd:string" name="valueArg"/>
<xsd:element type="xsd:boolean" name="esitoArg"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
codeArg and valueArg are the arguments I used to create a Correlation with the process instance
esitoArg is an argument that my process would get from an external caller
I know that I can get the sessionId using the startSession method
but, considering that I'm using correlation, why does ALBPM ask for the instanceId ???
Any help will be much appreciated.
Similar Messages
-
Top n Analysis using correlated subquery
Please explain this query. It is doing top n analysis using correlated subquery. I need explaination of execution of this query.
Select distinct a.sal
From emp a
where 1=(select count ( distinct b.sal) from emp b
where a.sal <=b.sal)
Thanks in advanceTry breaking the query down and rewriting it in order to follow the logic;
SQL> --
SQL> -- Start by getting each salary from emp along with a count of all salaries in emp
SQL> --
SQL> select a.sal,
(select count (distinct b.sal) from scott.emp b ) count_sal
from scott.emp a
order by 1 desc
SAL COUNT_SAL
5000 12
3000 12
3000 12
2975 12
2850 12
2450 12
1600 12
1500 12
1300 12
1250 12
1250 12
1100 12
950 12
800 12
14 rows selected.
SQL> --
SQL> --Add a condition to the count for only salaries below or equal to the current salarySQL> --
SQL> select a.sal,
(select count (distinct b.sal) from scott.emp b where a.sal <=b.sal) rank_sal
from scott.emp a
order by 1 desc
SAL RANK_SAL
5000 1
3000 2
3000 2
2975 3
2850 4
2450 5
1600 6
1500 7
1300 8
1250 9
1250 9
1100 10
950 11
800 12
14 rows selected.
SQL> --
SQL> -- Add a condition to only pick the nth highest salary
SQL> --
SQL> select a.sal,
(select count (distinct b.sal) from scott.emp b where a.sal <=b.sal) rank_sal
from scott.emp a
where (select count (distinct b.sal) from scott.emp b where a.sal <=b.sal) = 4
SAL RANK_SAL
2850 4
1 row selected.Hope this helps. -
I'd like to select print paper size with using AxAcroPDFLib method depend on user
I'd like to select print paper size with using AxAcroPDFLib method depend on user
request. Is it possible? in AxAcroPDFLib?
Is there any method to select print paper size in the C# programming.
Or if you know another method, please introduce how to use.
Thank you for your cooperation always.I am pretty sure that you can only do this from JavaScript or from C/C++ APIs.
-
Correlation Problem: unable to Use Correlation and Activate correlation
Hello,
i have created correlation name in correlation list and assigned involved messages and assigned proper field in correlaton in properties .i am able to view my correlation name in the properties of both receive steps ,but when i assign it to use correlation and move cursor to activate correlation .value in use correlation is not holding the value and holding space ,the same is happening to activate correlation field.
I am using PI 7.1.
Please let me know if you have really overcome this issue.
Regards,
Vishal K
Edited by: vishal kharat on Aug 3, 2011 6:15 PMit seems there is no way.
See note 1797073
Is there someone with a better solution? -
Using correlation with asynch RFC - Please Help!
Hi !
We have this scenario:
1) receive asynch messageA
2) transform messageA to messageB
3) send ASYNCH RFC messageB
4) receive RFC messageC
5) switch condition based on messageC
5-ok branch) send messageA
5-err branch) throw exception
We have only 3 containers, they are all abstract interfaces: messageA, messageB and messageC.
We need to correlate steps 3) and 4), to match the returning messageC with the corresponding sent messageB.
Is it ok to complete "Activate Correlation" in Send step 3) and only "Use Correlation" in Receive step 4), both with the same "name" ??
how do we correlate different message types? (messageB <> messageC) do we need to use a container to correlate?
Thanks !
MatiasMatias,
You are right..u need to activate correlation step 3 and use it in step 4.
Correlation between diff msg types happens this way..
when you define a correlation...u've to defien the fields of the correlation, and the participating msg interfaces and how each msg interface populates/reads the correlation fields
eg.
Correlation Name: MatchPO
Definition:
PO_Number XSD simple Type xsd:string
Participating Interfaces:
MI_Purchase_Order
MI_Sales_Order
PO_Number = MI_Purchase_Order/Header/PONUM
PO_Number = MI_Sales_Order/Header/Sales/PONR
to define the correlation...u need to switch to correlation editor from process view in Integration Process editor
hope it is clear now..
praveen -
Using Correlation in Initiator Task
Hi All,
I have a Manual BPM Process. At anypoint and time, to gain access to existing instance I'm using Event Sub-Process inside the same BPM Process.
To hook up with the right instance I'm using Correlation in Event Sub-Process. It's start node activity uses the correlation property.
Now the problem is, where do I initiate the correlation property, since the process is kicked of by the initiator. If I initiate correlation in the Human Task I'm receiving Correlation Violation Exception.
Please share your thoughts.
Two Cents,
KarthickHi,
I had faced the same problem earlier also. The solution is very simple. You have to create another correlation with same properties as the first one but with a different name. Now you will definitely be able to select the correlation.Select any one of the 2 correlations as they are doing the same tasks.
Hope it helps you buddy!!!!
Thanks
Biswajit -
Using correlation names :new and :old in ODBC
Does anyone know how to use correlation names :new and :old through an ODBC connection?
EG:
CREATE TRIGGER Print_Cust_changes
BEFORE INSERT ON CUST_tab
FOR EACH ROW
BEGIN
dbms_output.put('Adding: ' || :new.custid);
END;
When I try to do that using ODBC, I get this error:
Server Msg: 24344, State: HY000, [Oracle][ODBC][Ora]
Trigger, procedure or function created with PL/SQL compilation error(s).
And if I try and Insert I get:
Server Msg: 4098, State: HY000, [Oracle][ODBC][Ora]
ORA-04098: trigger 'BCL.PRINT_CUST_CHANGES' is invalid and failed re-validation
The same code works perfectly in SQL*Plus.The plot thickens...
I just tried this code:
CREATE OR REPLACE TRIGGER Print_Cust_changes
BEFORE INSERT ON CUST_tab
FOR EACH ROW
BEGIN
INSERT INTO CUST_LOG VALUES('X');
END;
And received the same error:
Server Msg: 24344, State: HY000, [Oracle][ODBC][Ora]
Trigger, procedure or function created with PL/SQL compilation error(s).
Again, using the same code (Cut & Paste) in SQL*Plus, it works without any problems.
The ODBC function being used is: SQLExecuteDirect(), ODBC driver is SQLORA32.dll v9.02.00.00
CREATE TABLE, VIEW, INDEX etc, all work fine, but not a trigger. If I read the code back from ALL_TRIGGERS after using SQL*Plus or the console application to create the trigger, it is exactly the same code... -
Recieve Step -Use Correlation and Activate Correlation
Hi,
In Integration process-recieve step , Can any one Please explain what does the properties USE CORRELATION and ACTIVATE CORRELATION mean and where these should be defined?
Many Thanks,
SharathThese are if you are going to be receiving many message into the same IP.
By default an IP is created everytime a new message is received. If you don't want this to be the case you can specify a correlation which says that if message A contains 123 and if message B contains 123 in a sepcific field then they belong in the same IP.
you define these where you define your containers you just have to toggle between the two modes. -
Can we put time on receive activity using correlation sets ?
I am using correlation sets for po process using ponumber.
In our process we send po message out and then wait(receive) for the response.
The receive activity will go into dehydration while waiting
for the response with the ponumber.
Is there any way to put a time on this receive activity so that we
can continue with the flow after certain time.
I was able to terminate the whole process by putting alarm
around the receive, but I want the process to just stop the
receive activity and continue with rest of the process.Hi,
By substituting receive with pick/onMessage/onAlarm, you should be able to implement the behavior you are looking for.
-Edwin -
Hi experts,
I'm working on file to file scenario using BPM.
i have 2 input files
1st file structure Name Salary Id
2nd file structure Id
i want to get the output from the first file if the Ids from both files are matching
how can i do this using correlation?
Is it necessary to use a container operation if i use correlation?
Thanks
SreediviaHi
To check whether ur bpm is correct or not.
Go to the transaction sxi_cache and select intergration process node in the left column and in the right side all the integartion processes will be displayed.
select ur integration process and check whether th IP code is 0 or 99 if it is 0 thenthe BPM u have created is correct else there is some error in BPM.
if the code is 0 in sxi_cache then just go to the sxmb_moni transaction select ur message and click on PE a new screen will be opened select the button graphical worlfolw in the menu in the upper part of the window.
u will able to see the complete workflow of the BPM .
if u still face the problem please reply me back.
Thanks
Rinku -
Error while using correlation ID
Hi I am getting the following error when my host is trying to reply using the correlation ID. The error say it cant find the instance with instance key dbde176c78edd4fd:59c59d4e:12393555045:-7fc4. But when i search in BPEL console with the instance key I am able to get the instance. How to solve this error kindly help.
Thank you
09/09/07 12:56:48 0 - ORABPEL-02152
Instance not found in datasource.
The process domain was unable to fetch the instance with key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" from the datasource.
Please check that the instance key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" refers to a valid instance that has been started and not removed from the process domain.
<2009-09-07 12:56:48,928> <WARN> <default.collaxa.cube> <BaseCubeSessionBean::logWarning> Error while invoking bean "finder": [com.collaxa.cube.engine.core.InstanceNotFoundException: Instance not found in datasource.
The process domain was unable to fetch the instance with key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" from the datasource.
Please check that the instance key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" refers to a valid instance that has been started and not removed from the process domain.
ORABPEL-02152
Instance not found in datasource.
The process domain was unable to fetch the instance with key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" from the datasource.
Please check that the instance key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" refers to a valid instance that has been started and not removed from the process domain.
at com.collaxa.cube.engine.data.AdminFinder.lookupInstanceByConversationId(AdminFinder.java:306)
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.collaxa.cube.engine.data.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:58)
at $Proxy1.lookupInstanceByConversationId(Unknown Source)
at com.collaxa.cube.ejb.impl.FinderBean.lookupInstanceByConversationId(FinderBean.java:205)
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:693)
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.TxNotSupportedInterceptor.invoke(TxNotSupportedInterceptor.java:43)
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 FinderBean_RemoteProxy_4bin6i8.lookupInstanceByConversationId(Unknown Source)
at com.oracle.bpel.client.Locator.lookupInstance(Locator.java:448)
at displayInstance.jspService(_displayInstance.java:123)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
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:400)
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:414)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:623)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:259)
at com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:51)
at com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:193)
at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:284)
at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:198)
at com.collaxa.cube.fe.DomainFilter.doFilter(DomainFilter.java:230)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:400)
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:414)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
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)Server issue problem got resolved
-
HT4356 How do I get the photo paper to print using an app from my iPad?
Has anyone had difficulties using an airprinter. I have been using a crafting app with photos. I selected my HP airprinter
To print the project. The first 3 times it worked correctly. Now when I try to print it will not use the photo paper.
It will print out on regular paper.
Any suggestions?
Thank you.Has anyone had difficulties using an airprinter. I have been using a crafting app with photos. I selected my HP airprinter
To print the project. The first 3 times it worked correctly. Now when I try to print it will not use the photo paper.
It will print out on regular paper.
Any suggestions?
Thank you. -
Correlation in bpm - Difference between activating and using correlation
Hi
I would like to know the difference between between activating a correaltion and using a correlation in a step.Correlation is used when you have multiple recieve steps in the BPM to differentiate each file.
Consider your recive step is executed and the BPM is active waiting for the other file to comne in.
Before the next file comes in , if another BPM is activated becuase your recived recive1 message. Now, when the next message comes in , how does XI know which BPM instance is to be used.
Correlation is used in these cases. to corelate the messages.,
some people name their Correlation as correlation in IP. So it means using the correlation 'correlation'.
its like me creating a message interface by the name 'messageinterface' so finally i am using the message interface messageinterface !!!
Check this weblog ..
/people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi
to understand it refer -
/people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi
Also Ref checklist on when it is needed -
http://help.sap.com/saphelp_nw04/helpdata/en/6d/94364296f1b26be10000000a155106/content.htm
Thanks !! -
New paper published on using Groovy in JDeveloper 11g.
If you are looking to use Groovy expressions in ADF Business Components but finding the current developer guides less than helpful, I've pulled together some typical use cases into a new white paper
http://www.oracle.com/technology/products/jdev/11/how-tos/groovy/introduction_to_groovy.pdf
Please let me know if you have any corrections/questions/feedback/
Thanks
GrantThanks Grant for this paper.
I was wondering what could be the next level of integration of groovy besides ADF BC inside ADF apps.
As I have no real experience with Groovy at this time, would it be realistic to write groovy classes either in the model or the view/controller layer ?
The idea is to benefit from Groovy powerful aspects as a dynamic and very concise language. Such groovy classes would be used to extend ADF framework classes for example.
Does that makes sense to you and do you see any oppurtunities of such an integration ?
Thanks,
Seb. -
Print in A4 size paper through AS3 using Flash CS5
Hi all,
Is any idea to print a job in A4 paper size by defult through AS3 using Flash CS5?Hi Shakeel,
I am already having customised page format .
It works fine when I choose Standard Device type EPLQ550
But EPLQ550 is probably not supporting Arabic text. It Gives ########
Thats why I changed to Standard Device type ARSWIN
Now Arabic text looks ok..... but Printer is not getting initialised after the first check. it skps.
Pl suggest
Thanks
SK
Maybe you are looking for
-
Add a watermark to multiple files within a PDF Portfolio in Acrobat X Pro?
Can I add a watermark to multiple files within a PDF Portfolio in Acrobat X Pro? If so, how? It appears as though it is a removed option.
-
HT3235 How to connect or activate mini dvihdmi port on Mac pro 10.6x ?
Why when I plug mini dvihdmicable adapter into the mini dvi port and then into my HDTV nothing happens? What am I not doing?
-
I use my powerbook for digital video editting. I connected to dv camera to the firewire 400 port and connect an external hard drive to the firewire 800 port. Recently when doing this the device that is connected last does not show as being connected.
-
HT204291 Airplay intermittent problem, why does not airplay work well anylonger?
Airplay intermittent problem, why does not airplay work well anylonger. Suddenly it drops out. Now this function has gone from great to ****. Trying to view streamed content from the ipad to the Apple TV? Nah forget about it. Sooo dissapointing.
-
When can we get an updated and fixed version of Itunes? None of the recommended fixes work!