Query on bpel.config.OneWayDelivery Property
Hello,
I have a query on bpel.config.OneWayDelivery Property.
Scenario : In case of any error in BpelProcess A , it will call BpelProcess B .So BpelProcessB will be called in the catchAll branch of Process A. After calling Process B, i am throwing a fault in Process A to rollback process A (as there is a DB adpater in it which i want to roll back). To invoke Process B in a separate transaction i set the bpel.config.transaction to requires new in the component section of composite.xml of process B. Please not Process B is ASynchronous process. Now :
Case 1: By setting only bpel.config.transaction property to 'requiresnew'.
Process A gets error, it calls Process B and it itself get rolledback (because of throw activity after a call to Process B). Now in the instance of Process A i am not able to see the trace of Process B. Only Process B name is appearing, also Process B didn't get executed at all or might be rolledback along with process A (not sure on this).
Case 2: By setting only bpel.config.transaction property to 'requiresnew' and bpel.config.OneWayDelivery property to 'sync'.
In this case everything works fine like Process A call Process B in case of Error. Process A get rolledback successfully and i am able to see the trace of Process B as it get executed successfully.
Questions :
In case1 though i have set the transaction=requiresnew, why Process B is not getting executed and i am not able to see the trace of it.Ideally Process B should get executed in a seperate transaction. While in Case2, everything works fine. So what exactly happening after placing 'OnewayDelivery' Property, that it started working.
I have went through the documents on 'OnewayDelivery', but i didn't get the clear idea corresponding to my scenarios explained above.
Can anyone please explain on how exactly 'OnewayDelivery' property works.
Thanks.
So,
For Case 1 : When Process B is getting executed in a separate Thread and Transaction , then when process A is getting rolled back why B is also getting rolled back as it's in different thread althgether.
3) For Case2 : Please clear my following understanding :
When we set the value to 'sync' for process B, then B will act like a synchronous process(ideally it Async), and will get committed after the it's execution. Because of this, even if A is getting rolled back, B will not get rolledback because it is already committed. For case 1:
By calling process B, an invocation message is being insert into the dehydration store. That causes process B to be created as a new thread/transaction.
When you perform rollback->the new transaction that was made following the new thread, is being rollback among the rest of your process transaction(the rollback causes the message not to be save and for that you can't see new instance).
For case 2:
By calling process B, only a new transaction is being creating, and invocation message is not being insert into the dehydration store.
So actualy, you have 1 thread and 2 transactions, and you are telling your process(thread) to rollback only the current transaction and not the new one (process A not owns the new transaction).
2) You mentioned if we are calling Process B with No Rollback. How to call B with No Rollback? Is there any property like that? It was just an example. Forget about it.
I hope it answered you questions...
Arik
Similar Messages
-
Reg: SQL select Query in BPEL process flow
<p>
Hi,
I am suppose to execute a SQL select query (in BPEL Process flow) as mention below in JDeveloper using Database adapter.
</p>
<p>
SELECT LENGTH, WIDTH, HEIGHT, WEIGHT,
</p>
<p>
LENGTH*WIDTH* HEIGHT AS ITEM_CUBE
</p>
<p>
FROM CUBE
</p>
<p>
WHERE ITEM= <xyz>
</p>
<p>
AND OBJECT= (SELECT CASE_NAME FROM CUBE_SUPPLIER WHERE ITEM=<xyz> AND SUPP_IND = ‘Y')
<strong>Now my question is:
1.</strong> What does this "*" refer to in the query and how can I retrieve the value of LENGTH*WIDTH* HEIGHT from the query where LENGTH,WIDTH and HEIGHT are the individual field in the table.
2.What does this " AS" refer to? If " ITEM_CUBE " is the alies for the table name "ITEM" to retrieve the value, then query shoud be evaluated as
</p>
<p>
SELECT LENGTH, WIDTH, HEIGHT, WEIGHT,
</p>
<p>
LENGTH*WIDTH* HEIGHT AS ITEM_CUBE
</p>
<p>
FROM CUBE
</p>
<p>
WHERE <strong>ITEM_CUBE.ITEM</strong>= <xyz>
</p>
<p>
AND <strong>ITEM_CUBE.OBJECT</strong>= (SELECT CASE_NAME FROM CUBE_SUPPLIER WHERE ITEM=<xyz> AND SUPP_IND = ‘Y')
Is my assumption correct?
Please suggest asap.
Thanks...
</p>
<p>
</p>Hi
Thank for your reply!
I have a nested select query which performs on two different table as shown below:
<p>
SELECT LENGTH, WIDTH, HEIGHT, WEIGHT,
</p>
<p>
LENGTH*WIDTH* HEIGHT AS ITEM_CUBE
</p>
<p>
FROM CUBE
</p>
<p>
WHERE ITEM= <abc>
</p>
<p>
AND OBJECT= (SELECT NAME FROM SUPPLIER WHERE ITEM=<Item> AND SUPP_IND = ‘Y')
I am using DB adapter of Oracle JDeveloper in BPEL process flow, where I can able to select only one master table in DB adapter say SUPPLIER and its attributes at a time.But as per my requirment I need to select both the table (CUBE and SUPPLIER) in a single adapter to execute my query.
It can be achievable by using two DB adapter , One to execute the nested query and another to execute the main qyery considering value of nested query as a parameter.But I want to achieve it by using a single one.
Am I correct with my concept?
Please suggest how to get it ?
</p>
Edited by: user10259700 on Oct 23, 2008 12:17 AM -
Complex SQL Query in BPEL DB Adapter
Hi,
Is it possbile to write a complex query in BPEL DB Adapter using "Custom SQL Query"?
I would like to write an IF ELSE condition in the DB Adapter similar what is given below..
IF((SELECT COUNT(*) FROM F5898001 WHERE CT58SRCNME = 'CA_TEST' AND CTJOBNAME = '12345' AND CTEDBT = 'EDBT' AND CTEDSP = 'B') < 1)
BEGIN
insert into f5898001 (CTJOBNAME,CTEDSP,CTEDBT,CT58SRCNME) VALUES (#jobname, #edsp, #edbt, #srcnme)
END.In a single pass no.
You could use a DB link to perform select and return result to BPEL process variable. Put a switch decision depending on result in variable that calls a DB Adapter to perform the insert.
Wouldn't be in a single transaction and not very elegant, but might be a way round. -
Tax query builder with "workflow status" property
Hi,
is it possible to create a tax query builder with "workflow status" property? For example: folder A only with documents "Relased", folder B only with document "In progress"?
In property meta data I saw that there is a property "cm_workflowState", I made it indexable, but it doesn't work....
thanks,
PaoloHi,
Thanks to share your post.
For the issue, I think it may due to the wrong handling of the encoding type “UTF-8”, please refer to the followed article, they may give you a hand:
http://blogs.sun.com/shankar/entry/how_to_handle_utf_8.
http://devlog.info/2008/08/24/php-and-unicode-utf-8/.
Hope this could help you!
Leo -
Bpel-config.xml and soa-infra-config.xml file location in SOA 11g Pre-built
Hi frnds,
I have downloaded and started Oracle SOA 11g Pre-built from http://www.oracle.com/technetwork/middleware/soasuite/learnmore/vmsoa-172279.html and trying to configure it according to my requirements to upgrade from SOA 10g to 11g. But I can't find bpel-config.xml and soa-infra-config.xml files in BPEL domain home (i.e. /oracle/fmwhome/user_projects/domains/domain1).
Can you please help me?
BR, LisanNone of those roles are intended to be granted to application users. Those are instead to limit various operational / support responsibilities. For instance, if you have "operators" for your production environment who are responsible for starting & stopping servers vs "Administrators" who are performing configuration changes, etc.
The SOA* versions can be used to separate even further - an "Operator" ( with rights in the WL console ) can be distinct from a "SOAOperator" ( with rights in the SOA /em ), etc.
http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10226/appx_roles_privs.htm#insertedID2
also, here is a bit more on soa-infra roles:
http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10226/appx_users.htm#insertedID4 -
Refreshing ADF Query Component after changing some property of a criteria
Hi All
Use Case : Refreshing ADF Query Component after changing some property of a criteria attribute.
I have a query panel with 2 query criteria i.e. FirstName and DepartmentId where in DepartmentId is a drop down. The scenario is like when change the value of DepartmentId to 'Finance' with code value of '100' then my criteria attribute 'Firstaname' should be invisibe(queriable=false).
Approach: Have overriden the queryOperationListener of adfquery as " queryOperationListener ="#{backingBeanScope.backing_queryLstener.processQueryOperation}" "
My backing bean method goes as below :
public void processQueryOperation(QueryOperationEvent queryOperationEvent) {
// Add event code here...
if( queryOperationEvent.getOperation().equals(queryOperationEvent.getOperation().CRITERION_UPDATE) ){
DCBindingContainer bindings = (DCBindingContainer)this.getBindings();
DCIteratorBinding iter =bindings.findIteratorBinding("EmployeeView1Iterator");
ViewObjectImpl voimpl = (ViewObjectImpl)iter.getViewObject();
ViewCriteria vc = voimpl.getViewCriteriaManager().getViewCriteria("EmployeeViewCriteriaDemo");
Row currRow = vc.first();
System.out.println("Department :"+currRow.getAttribute("DepartmentId"));
if( (Integer)currRow.getAttribute("DepartmentId") ==100 ){
AttributeDef[] attrs = voimpl.getAttributeDefs();
int attrIndex = voimpl.getAttributeIndexOf("FirstName");
ViewAttributeDefImpl attrDef = (ViewAttributeDefImpl) attrs[attrIndex];
attrDef.setQueriable(false);
// AdfFacesContext.getCurrentInstance().addPartialTarget(getQryId1()); //here i need to refresh the query component which is not happening
// refreshQueryComponent(getQryId1());
Everything is happening as expected but the query panel s not get refreshed.When i refresh the whole link/page then i can see the change.
Please suggest.
Thanks in adv.
-SanjeebHi,
can's say anything about the first part of the question as more insight to the implementation would be required. However, have a look at http://www.oracle.com/technetwork/developer-tools/adf/learnmore/83-bidi-synchronization-tree-form-401841.pdf, which may be what you are looking for
To the second part: You can programmaticallly refresh the tree component from a managed bean. So instead of using the declarative PPR option (or ChangeEventPolicy set to PPR on the iterator binding) you can wire the submit button to the managed bean, perform your validation and if it fails don't refresh teh tree
The call is
AdfFacesContext.getCurrentInstance().addPartialTarget(the_tree_instance)
Frank -
How to bind/pass multiple input parameters to sql query in BPEL Process
Hi,
I have a requirement to invoke a query on a database table to fetch the records based on the few input values or bind variables?
I have created a Partner link using the DBAdapter service and have used custom SQL, how can i bind and pass multiple bind/input parameters for these queries.
foreg: if i have to query employee records based on name , desgination and age, these three params would be my input parameter that i will pass when i invoke the BPEL process, bow how can i pass these parameters to the partner link using DBADAPTER service.
Please help
RegardsIf the parameter-value is not known beforehand and cannot be determined based on the process instance data at that time, there are 2 options. Either invoke the PL/SQL procedure you named using a DB adapter service to get the value and pass it to the other DB adapter service. Or create a single service (e.g. PL/SQL procedure) that determines the parameter value, executes the query and returns the result. However, this is more a design issue. Does it makes sense to combine these actions in a separate service and use it or are these actions not related? You furthermore state that additional (DB adapter) services make the process heavier. Do you have strict requirements on the time process-instances may run or other such requirements? If not, I think the design-choice on whether combining these actions in a single service should have more priority.
-
Nested query in BPEL JDeveloper
Hi,
Can anyone help me with nested query writing in BPEL (JDeveloper)
the query is :
SELECT LENGTH, WIDTH, HEIGHT, WEIGHT,
LENGTH*WIDTH* HEIGHT AS ITEM_CUBE
FROM ITEM_SUPP_COUNTRY_DIM
WHERE ITEM= <Level1 item>
AND DIM_OBJECT= (SELECT CASE_NAME FROM ITEM_SUPPLIER WHERE ITEM=<Item> AND PRIMARY_SUPP_IND = ‘Y')
Please help me with the steps.
Many thanksHi,
For the following query:
SELECT S.STORE, S.STORE_NAME, A.ADD_1, A.ADD_2, A.ADD_3, A.CITY,A.STATE, A.POST, A.COUNTRY_ID, A.CONTACT_PHONE, A.CONTACT_NAME,S.STORE_OPEN_DATE, S.STORE_CLOSE_DATE, S.REMODEL_DATE, S.TRANSFER_ZONE,S.DISTRICT,S.STORE_TYPE
FROM STORE S, ADDR A
WHERE S.STORE= #store
AND to_char(S.STORE) = #keyValue1
AND A.MODULE = #module
AND A.ADDR_TYPE = #type
AND A.PRIMARY_ADDR_IND=#addrType
the DB adapter shows this xml:
<?xml version = '1.0' encoding = 'UTF-8'?>
<xs:schema targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/db/WMSStoreDataLookUp" xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/WMSStoreDataLookUp" elementFormDefault="qualified" attributeFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="WMSStoreDataLookUpInput" type="WMSStoreDataLookUpInput"/>
<xs:complexType name="WMSStoreDataLookUpInput">
<xs:sequence>
<xs:element name="store" type="/><br /><br /> <xs:element name="keyValue1" type="/>
<xs:element name="module" type="/><br /><br /> <xs:element name="type" type="/>
<xs:element name="addrType" type="/><br /><br /> </xs:sequence><br /><br /></xs:complexType><br /><br /><xs:element name="WMSStoreDataLookUpOutputCollection" type="WMSStoreDataLookUpOutputCollection" nillable="true"/><br /><br /><xs:complexType name="WMSStoreDataLookUpOutputCollection"><br /><br /><xs:sequence><br /><br /><xs:element name="WMSStoreDataLookUpOutput" type="WMSStoreDataLookUpOutput" minOccurs="0" maxOccurs="unbounded"/><br /><br /></xs:sequence><br /><br /></xs:complexType><br /><br /><xs:complexType name="WMSStoreDataLookUpOutput"><br /><br /><xs:sequence><br /><br /><xs:element name="S_STORE" type="xs:decimal" nillable="true"/><br /><br /><xs:element name="S_STORE_NAME" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_ADD_1" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_ADD_2" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_ADD_3" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_CITY" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_STATE" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_POST" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_COUNTRY_ID" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_CONTACT_PHONE" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_CONTACT_NAME" type="xs:string" nillable="true"/><br /><br /><xs:element name="S_STORE_OPEN_DATE" type="xs:dateTime" nillable="true"/><br /><br /><xs:element name="S_STORE_CLOSE_DATE" type="xs:dateTime" nillable="true"/><br /><br /><xs:element name="S_REMODEL_DATE" type="xs:dateTime" nillable="true"/><br /><br /><xs:element name="S_TRANSFER_ZONE" type="xs:decimal" nillable="true"/><br /><br /><xs:element name="S_DISTRICT" type="xs:decimal" nillable="true"/><br /><br /><xs:element name="S" type="xs:string" nillable="true"/><br /><br /><xs:element name="A_PRIMARY_ADDR_IND__addrType" type="xs:string" nillable="true"/><br /><br /></xs:sequence><br /><br /></xs:complexType><br /><br /></xs:schema><br /><br /><br /><br />Please, look at the last few lines of XML and let me know if this is correct.. -
Query with an integer managed property
Hello everyone,
A (I hope) simple question. How to do search with a managed property of type Integer (or non-text type in general)?
Here is what I am doing and fail to make function so far.
Create a column of type Number with a Document Library; name it LocalNumColumn.
Crawl once to have it as a crawled property: ows_LocalNumColumn.
Map it to one of the out-of-box predefined managed property: RefinableInt00.
Re-crawl to populate the managed property, though not sure if necessary.
It works with the Refinement web part. I am able to refine a search result, choosing a defined threshold.
But that's it. I cannot use it in any other way, such as with the Content Search web part.
A query like "path:"..." (IsDocument:"True" OR contentclass:"STS_ListItem") RefinableInt00>1000" returns with "We didn't understand your search terms. Make sure you're using the proper syntax".
The same response from /searchcenter/Pages/results.aspx?k=RefinableInt00%3E1000.
I do not know whether this is a syntax issue or the way I prepare the numeric property.
Any insight?
Thank you, KazuHi,
The problem is with RefinaableInt00, which is just the retrieve and refine as shown in the below screenshot.
You need to make this refinable property to include search as well then only you are able to search in the search results.
Edit the property and select search option and then do the full crawl. The results will appear as per your expectation.
The best practice in my opinion is to create the custom Managed Property with all settings set like Queryable, Search, Refinable etc and map your crawl property.
Please mark it answered, if your problem resolved or helpful. -
Using update query in BPEL Process
I want to update Database using query:update ordertest set orderstatus='partially completed' where orderid=100,
I am taking entry of orderid from JSP page and mapping the values in XSD file. I am unable to figure out
how to update database with this query where one value which will decide the row to be updaed will come from
JSP page or is input of XSD file.
Please help
Thanks
YatanWS-Addressing is used for message correlation by default and is handled completely transparently by Oracle BPEL Server. If you want to see the WS-Addressing correlation information, you can use a TCP tunnel to see the SOAP messages exchanged with the services.
Heidi. -
Setting BPEL's syncMaxWaitTime property in Soa suite 11g
Hi,
what is the path of domain.xml file in 11g to set syncMaxWaitTime property
RegardsLogin into EM Console/Expand SOA and right click on "soa-infra" and select: SOA Administration/BPEL Properties/"More BPEL Configuration Properties/syncMaxWaitTime
-
Hi All,
We have requirement to exect the bleow query by not using Custom SQL
select * from A a where a.x1 not in (select b.x1 from B b).
Is this possible using simple DBadapter by selecting "*perform an Operation on table*" by modifingt the Toplink in the jdeveloper.
any help in this highly appreciated.
Thanks and Regards,
Nagaraju .DHi,
You can use "perform an operation on table" and in the 8th Step replace the SQL statement by
select * from A a where a.x1 not in (select b.x1 from B b)
Regards,
Deepak Suri -
Query about BPEL functionality
I'm investigation BPEL's suitability for a project I'm working on and I'm having difficulty finding answers to the following questions:
Is there a means to locate all instances that meet common criteria (e.g. all instances in a specific process flow or all instances at a specific activity within a specific process flow)?
Is there a way to find out which activity and process flow a process instance is currently on?
Is there a way to override the process flow and move a process instance from one activity to another?Hi, what exactly are you trying to achieve? In fact, I don't know if you can define more than one partnerLinkType in a wsdl. But only to play a little bit around with the idea (to learn):
You have different operations with different input and output messages (let's forget about the fault ones).
You have a port type which is bringing the operations together for the web service.
You have a partner link describing the roles for the port type.
(correct me if I'm mistaken, I'm still a newbie).
A guess: Trying to split up given operations for a web service onto different partnerLinks?
Regards,
Hansi -
Sun Java Directory Server Query - users in "config" tree
Hello,
I would like to find out if Admin users in the "config" tree have a password policy applied to them?
I have tried running the following command (which shows password policies for users in "people"):
# ldapsearch -h server1 -p 389 -D "cn=Directory Manager" -b "cn=Administrators,cn=config" objectclass=* PwdPolicySubentry
Enter bind password:
version: 1
dn: cn=Administrators,cn=config
dn: cn=admin,cn=Administrators,cn=config
dn: cn=user1,cn=Administrators,cn=config
________________________________________________I am also wondering, is there a way I can configure an ldapclient so I could log in as a "config" user?
Thank youHello,
I would like to find out if Admin users in the "config" tree have a password policy applied to them?
I have tried running the following command (which shows password policies for users in "people"):
# ldapsearch -h server1 -p 389 -D "cn=Directory Manager" -b "cn=Administrators,cn=config" objectclass=* PwdPolicySubentry
Enter bind password:
version: 1
dn: cn=Administrators,cn=config
dn: cn=admin,cn=Administrators,cn=config
dn: cn=user1,cn=Administrators,cn=config
________________________________________________I am also wondering, is there a way I can configure an ldapclient so I could log in as a "config" user?
Thank you -
Dear Gurus,
In STO Config,
"assign delivery type, one step procedure, underdel tol" customizing:
If we tick mark on one step procedure, how it will impact?
Thanks in advance..Hi
if you set the indicator for the one-step procedure, the goods receipt
is posted in the receiving plant at the same time as the goods issue is
posted in the issuing plant.
Regards
Damu
Maybe you are looking for
-
Hi, I would appreciate some help from anybody that can. I am a new BB user with a Curve 9300 and have been setting up my device. I have run into a problem and am at a dead end as far as solving it. KB03133 at http://www.blackberry.com/btsc/search.do?
-
EWT-Challan not generating due to open item management
By mistake one of the end user responsible for one co code has created the withholding tax gl as without ticking the open item management .Now while generating challan error is coming as "No unpaid tax lines exist for the given selection criteria" .
-
Java on i386SX25 / 286?
Hi, does someone know what would happen if you try to install Java on an old i386 or i286 system? Would it work? (even if much moooore slooower)
-
NetInfo Manager in Leopard??
I am trying to follow some instructions from the Tecplot Support page to correct an error message that I am getting. The instructions call for me to make some changes using the NetInfo Manager Utility. This utility does not appear to be in Leopard. I
-
Internet shuts down when connecting to apple tv
The apple tv works fine, except with airplay mirroring. First I click the apple tv icon on my laptop to start screen sharing with the Apple tv. My screen changes its resolution so it will be optimized for the tv that the apple tv is connected to. Aft