Ora:getPreference inside Transformation
All,
BPEL 10.1.3.4
I declared a depl.descriptor variable in bpel and tried to access the value of this variable inside transformation using ora:getPreference. But when I invoked the bpel, the transformation got failed with the following stack
avax.xml.transform.TransformerException: file:///C:/soa10g/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_OutOrderRequestMap_1.0_d0c3aa6e299725712cd454eb53c828f5.tmp/New.xsl<Line 38, Column 96>: XML-22016: (Error) Extension function namespace should start with 'http://www.oracle.com/XSL/Transform/java/'.
* at oracle.xml.jaxp.JXTransformer.reportXSLException(JXTransformer.java:926)*
* at oracle.xml.jaxp.JXTransformer.transform(JXTransformer.java:472)*
* at com.collaxa.cube.xml.xpath.functions.xml.GetElementFromXSLTFunction.transform(GetElementFromXSLTFunction.java:335)*
* at com.collaxa.cube.xml.xpath.functions.xml.GetElementFromXDKXSLTFunction.transform(GetElementFromXDKXSLTFunction.java:38)*
* at com.collaxa.cube.xml.xpath.functions.xml.GetElementFromXSLTFunction.evaluate(GetElementFromXSLTFunction.java:144)*
* at com.collaxa.cube.xml.xpath.functions.xml.GetElementFromXSLTFunction.call(GetElementFromXSLTFunction.java:89)*
* at com.collaxa.cube.xml.xpath.BPELXPathFunctionWrapper.evaluate(BPELXPathFunctionWrapper.java:50)*
* at oracle.xml.xpath.JXPathContext$JXFunction.invoke(JXPathContext.java:147)*
* at oracle.xml.xpath.JXPathContext$JXFunction.invoke(JXPathContext.java:116)*
* at oracle.xml.xpath.XPathExtFunction.evaluate(XPathExtFunction.java:254)*
* at oracle.xml.xpath.JXPathExpression.evaluate(JXPathExpression.java:181)*
* at com.collaxa.cube.xml.xpath.BPELXPathUtil.evaluate(BPELXPathUtil.java:189)*
* at com.collaxa.cube.engine.ext.wmp.BPELAssignWMP.evalFromValue(BPELAssignWMP.java:679)*
* at com.collaxa.cube.engine.ext.wmp.BPELAssignWMP.__executeStatements(BPELAssignWMP.java:143)*
* at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:199)*
* at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3698)*
* at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1655)*
* at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)*
* at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:217)*
* at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:314)*
* at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5765)*
* at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1087)*
* at com.collaxa.cube.engine.delivery.DeliveryService.handleInvoke(DeliveryService.java:546)*
* at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleInvoke(CubeDeliveryBean.java:342)*
* at sun.reflect.GeneratedMethodAccessor167.invoke(Unknown Source)*
Please try to declare the namespace in XSLT for GetPreferences function. In case this deos not work, you can try below workaround,
1. Create a temporary variable.
2. Assign Value getPreferences values to temporary variable.
3. Pass this temporary variable as input to XLST and then assign this variable in XSLT.
Hope this will resolve your issue quickly.
Similar Messages
-
Accessing ora:getpreference inside xslt map
Hi
I need to access preferences values of the BPEL Suitcase Descriptor using ora:getpreference inside xslt map. I tried but it dosent work in xslt. Could any one please advise as to what is the way to access preferences values from inside a xslt.
Thanks
Buddhadevis the bpws:getVariableData() function also not usable inside an XSL Mapper?
JDeveloper allows it. There is no error at compile and deploy times. It seens to be odd that those functions are there, but we cannot use them. Could any one explain this behavior?
I got the following error when trying to use ora:getPreference() or bpws:getVariableData():
(Error) Extension function namespace should start with 'http://www.oracle.com/XSL/Transform/java/
I need to call these functions to build a request from a variety of sources: process input, deployment descriptor preferences, variables, etc.... The real use case is more than one-to-one mapping/transformation.
If these functions are not usable inside an XSL Mapper, JDeveloper should not show them as available options.
Edited by: user9520923 on Sep 16, 2008 1:36 PM
Edited by: user9520923 on Sep 16, 2008 2:02 PM -
BPEL Processes failing in function ora:getPreference('STRING')
Hi,
I am having a BPEL process which is sometimes failing while fetching value of ora:getPreference('STRING') in a copy operation, and sometimes it works fine (like today there are 3 instances out of whcih 2 are success and the first one failed).
The value of the preference is already defined in deployment descriptor.
I am using SOA 10.1.3.3.
Please help in this...
Greetings,
Ankit ChhabraHi,
To pass preference variables values in XSLT, create an element in one of the source schema of your XSLT.
Use an assign action before that transformation,and assigns the value of preference var to that newly created variable.
Use that variable value to map it to required target node.
Hope this helps.
Regards,
Karan
http://learn-oraclesoa.blogspot.com/ -
Get Node value inside Transform activity using any function
<xsl:when test="\ns0:data = *+Value of Xml node(NODE)+*">
</xsl:when>
At value of XML node i want to put the value of one xml node. is there any function in transform to get the content of node.
Thanks
vivek
Edited by: 809104 on Nov 14, 2010 9:29 PMI got the solution
we can use variable inside transform and assign xpath value to that variable then we can use that variable inside test condtition
<xsl:variable name="name" select="xpath"/>
<xsl:when test="\ns0:data = $name">
</xsl:when> -
Disable validation inside Transformer?
is there a way to turn off validation within the Transformer class? Our XSL uses document() to reference external XML files:
<xsl:value-of
select="document($teamsched-resource-file)/schedule/event-metadat\a[@event-key = $event-id]/@start-date-time"/>where the external file DOCTYPE uses a relative (but invalid) SystemID DTD file path:
<!DOCTYPE schedule PUBLIC "-//XMLTEAM//DTD sportsml-core 1.0/EN" "dtds/sportsml\-core.dtd">and the transform gives the following on each call to document():
file:///home/ticker/xsl/scoresxml.xsl; Line #394; Column #41;
Can not load requested doc: /home/ticker/resources/l.nba.com/dtds/sportsml-core.dtd
(No such file or directory)Is it possible to dig out the XMLReader (or whatever it is) from the Transformer and toggle it's validation?
We're using Java 1.4.2 and the apache Xalan classes.That's an interesting hack (which one would think would be simpler to do!) but it's not the problem I have -- I do not want to disable the entity resolver in the DOM builder, I need to disable it in the Transformer ... and so far as I can tell, I can't get my hands on the SAXBuilder used inside the Transformer class to provide the XML parsing supporting the XSL document() method for importing external XML documents during a transform.
Or do I misunderstand the answer in that other thread? Is it actually possible to extract and modify, or replace, the SAXBuilder (or whatever it is) used with the Transformer?
Also, for the example given in that other thread, why do they not simply use SAXBuilder's setValidation(false)? When I do this for the builder used to create the Document class from an XML file, the DTD is completely ignored. -
Deadlock ORA-00060 with Transformations
Hi everyone,
we are on SP 10 together wih Oracle 10.2.0.2.0. In our development system I made already some big test loads (~Mio entries) from Data Store to cube. As sometimes in 3.0B we get a self-deadlock because processes killed each other, but now it happens more often. The bad thing with such an error from a Data Store to cube, that there is no possibility to make a manual update so a restart is necessary.
Has anyone suffered the same? Any proposals others than too less data or use PSA and Update-rules?
My current solution is to set the data-package size so high that the load is done in one package, what is really not a good solution. Is there a possibility to reduce the paralellility to one at a cube load other than my method?
Best regards
Harald.Hi Harald,
Kindly look into the following notes :
980555 ORA 600 [kdtdelrow-2] during insert with deadlock
1015152 ORA 600 [kdtdelrow-2] during insert in Oracle 10.2.0.2
1003217 ORA-600 [kdiblLockRange:not validated] during an insert
hope this helps,
Regards
KK -
Passing Deployment Descriptor value to transformation - Important
All,
Version: 10.1.3.4
I have a requirement to get run time value and access it inside transformation (xslt). Hence I used deployment descriptor, but I'm stuck on how to access this value inside transformation. I tried ora:getPreference to use it inside Assign activity and successfully done this, but cudn't do the same inside transformation. Any pointers would be of great help.
rgds
senHi,
Ya, i'm looking for such doc. Can you please share it if you have?
I followed this (http://soacrux.blogspot.com/2010/08/passing-bpel-variable-contents-into.html) blog. For bpel 10g, is it mandatory to keep the XSLTParameters.xsd? If i use this xsd and create a variable of the xsd type, during deployment jdev throws an error
Error(64):
*[Error ORABPEL-10010]: unresolved element*
*[Description]: in line 64 of "D:\Application1\BPELProcess1\bpel\BPELProcess1.bpel", XML element "{http://schemas.oracle.com/service/bpel/common}parameters" of variable "Variable_3" is not defined.*
*[Potential fix]: Make sure the XML element "{http://schemas.oracle.com/service/bpel/common}parameters" is defined in one of WSDLs that are referenced by the deployment descriptor.*
rgds
sen
Edited by: Sen2008 on Jan 22, 2012 12:58 AM -
Assign ora:getCompositeInstanceId() in the xsd element
I need to assign BPEL process id, ora:getCompositeInstanceId(), to one of element in the xsd. Is this function available in the Transformation mapping so that I can assign to the element? I found the function in the mediator functions but I didn't work in the BPEL. Any of your idea will be appreciated.
SOA: 11.1.1.6It works in BPEL, it is available as part of Advanced Functions in Expression Builder. However, it does not in Transformations(XSLT). So to work around two alternatives can be used
Alternate 1:
- Create a temp variable like "varCompositeInstanceId".
- Create a assign activity, before the transformation, set the value of the variable to "ora:getCompositeInstanceId()" inside this Assign activity.
- Send the variable as a parameter to the transformation.
- Use the parameter to map to the target inside the transformation(XSLT).
Alternate 2:
- Set the target in the XSLT to some random text.
- After the transformation, add an assign activity and inside it, set the value of the taget to "ora:getCompositeInstanceId()".
Mark the posting appropriately as "helpful" or "correct answer", if your issue is resolved. -
ORA-03123 while using UTL_FILE package in oracle forms 10g
hi all,
i have created a directory 'REPORTS' as 'E:\EXCEL_TESTING_FORM\' and give grant read,write this directory to scott.
and also given grant execute on UTL_FILE to scott;
i have written this code in a button-pressed trigger and my file name is somename.xls file
After printing the first line like 7369SMITH3000 in a single cell when it is going to print the second employee record it is showing
ORA-03123 inside the loop.
CURSOR EMP_DATA IS
SELECT * FROM SCOTT.EMP;
C_REF EMP_DATA%ROWTYPE;
L_FILE UTL_FILE.FILE_TYPE;
V_PATH VARCHAR2(200) := '';
BEGIN
V_PATH := 'REPORTS';
L_FILE := UTL_FILE.FOPEN (V_PATH,P_FILE_NAME, 'W');
OPEN EMP_DATA;
LOOP
FETCH EMP_DATA INTO C_REF;
EXIT WHEN EMP_DATA%NOTFOUND;
UTL_FILE.PUT_LINE(L_FILE, TO_CHAR(C_REF.EMPNO));
UTL_FILE.PUT_LINE(L_FILE, C_REF.ENAME);
UTL_FILE.PUT_LINE(L_FILE, TO_CHAR(C_REF.SAL));
END LOOP;
CLOSE EMP_DATA;
UTL_FILE.FFLUSH(L_FILE);
UTL_FILE.FCLOSE(L_FILE);
please guide me how to avoid that error and also how to print cell wise why because it is print in a single cell.
please reply...hi Andreas Weiden,
No it is not a network-drive. i have total 0f 3 drives
one is of c drive for wind sp2 and in d i have loaded oracle database and i have created a directory on e drive i.e 'E:\EXCEL_TESTING_FORM\'
in that i have created a excel file i.e called taru.xls.
so i want to know where is the problem.
please reply... -
Ora:processXSLT xpath function and absolute paths
It looks like ora:processXSLT xpath function does not honor absolute paths when specifying the location of the xslt to use in the first parameter. For example, if I call it like this:
<copy>
<from expression="ora:processXSLT('/u01/transforms/mytransform.xsl',bpws:getVariableData('xslInput','payload'))"/>
<to variable="xslOutput"/>
</copy>
I get the following error in the bpel logs:
Error while processing xpath expression, the expression is "ora:processXSLT('/u01/transforms/mytransform.xsl', bpws:getVariableData("xslInput", "payload"))", the reason is javax.xml.transform.TransformerException: java.io.FileNotFoundException: /u01/oracle/bpel/integration/orabpel/domains/test/tmp/.bpel_transformTest_1.0.jar/u01/transforms/mytransform.xsl (No such file or directory).
Please verify the xpath query.
It is assuming that the xsl will be relative to the bpel suitcase and just appending the supplied path to the relative path for the bpel process. Why would I want to do this? Well, I have hundreds of these maps and I want to be able to select one at runtime. I'm also adding new ones every day and I don't want to have to redeploy the process that uses them each time I add a new map. Is there any way to force this process to recognize the absolute path? I can work around it for now by using a bunch of ../../../../ stuff but that's a kludge and I'd like to find a better way to do it.
I get the same error with xdk:processXSLT.
Any suggestions?
Thanks!
SeanHi Sean,
Did you try to the file path with the file:// prefix and not just the path?
~ronen -
SQL Error: ORA-12801: error signaled in parallel query server P012 ORA-0001
Dear all
We are in BI 7.0 and oracle 10.2.02 and OS AIX 5.3 and we are getting the ORA -12801 while attribute change run
and aggregates rollup.
plz help
Regards
Amiya KumarHi...
Check SAP Note 934281 - No 'Star Transformation' for a Hierarchy Changerun......
Symptom
The SQL command of a hierarchy changerun is executed with a
PARALLEL hint under ORACLE, and the system therefore always accesses the fact table with a full tablescan although only a little may be read.
Other terms
Query, aggregate, realignment run, ORACLE, Parallel Hint, ORA-12801,
ORA-01652, start transformation, parallel hint
Reason and Prerequisites
The Parallel hint should only be set when the aggregate is built again,
but not with the delta realignment run. There was no check made in case of a hierarchy changerun. So hierarchy changerun was executed with the
parallel hint.
Solution
With the following code correction, the hierarchy changerun also adapts
to star transformation when an aggregate has delta changes.
BW3.0B
Import Support Package 31 for Release 3.0B (BW3.0B Patch 31 or SAPKW30B31) into your BW system. The Support Package will be available when note 0872272 with the short text "SAPBWNews BW 3.0B Support Package 31", describing this Support Package in more detail, is released for customers.
BW3.1C (Content)
Import Support Package 25 for Release 3.1C (BW3.1C Patch 25 or SAPKW31025) into your BW system. The Support Package will be available when note 0872274 with the short text "SAPBWNews BW 3.1C Support Package 25", describing this Support Package in more detail, is released for customers.
BW 3.50
Import Support Package 17 for Release 3.50 (BW3.50 Patch 17 or SAPKW35017) into your BW system. The Support Package will be available when note 0872277 with the short text "SAPBWNews BW SP17 NetWeaver'04 Stack 17", describing this Support Package in more detail, is released for customers.
SAP NetWeaver 2004s BI
Import Support Package 13 for SAP NetWeaver 2004s BI (BI-Patch 13 or SAPKW70013) into your BI system. The Support Package will be available when note 991093 with the short text "SAPBINews BI 7.0 SP13", describing this Support Package in more detail, is released for customers.
Regards,
Debjani.........
Edited by: Debjani Mukherjee on Oct 10, 2008 12:08 PM -
Using the XPATH expression function in Transformation activity
Hi,
I have to map the variable value(other than the source variable) to one of the node in the target variable in the transformation activity. For that I am using the XPATH expression function bpws:getVariableData ('variableName') and map it to corrsponding target node. But this mapping is not at all happening. The same prolem occurs while using function ora:getInstanceID() in transformation function. Then I could find a metalink note id: 387381.1,saying it as the bug in 10.1.2.2 BPEL PM, which they are covering in the next release. But our BPEL PM version is 10.1.3.3. But still the same type of problem occurs.
Please let me know, is there are any solution for using the ora:getInstanceID() , bpws:getVariableData in Transformation activity.Hi,
I dont understand why would you need to use the "bpws:getVariableData" function.
When you are mapping a source-node to a target-node, it usually assigns the value in the source-node to the target-node, which is as good as using the "bpws:getVariableData" function.
So, technically speaking you need to use this function explicitly to achieve that ...
Also, if you want the instance-id, you can use the "ora:getInstanceId()" directly in the BPEL code than using it in the transformation.
Regards,
Madhu. -
Trimming comma in Transformation
Hi all,
I have a requirement of storing a string (containing commas) into an integer database field (without commas). I am thinking of trimming the commas inside transformation but I am not able to acheive it.
Source Datatype: String
Source Data example1: 2,000,765
Source Data Example2: 1,000
Destination Database column datatype: Number
Destination Data should look like: 2000765 (for example1) and 1000 (for example2)
I need to remove the commas from the incoming string and need to store it in Database column. Above I have mentioned just an example.
I am using Jdeveloper 10.1.3.3 version.
Please help me out in this.
Thanks,
Abhishek.Hi all,
I have resolved this issue by using Translate function and then converting it to number in Transformation.
Thanks,
Abhishek... -
We have a hardcoded email address we use for testing error messages during development.
We would like to be able to change the email address with an ant deployment plan. How can we create a variable to store this value that can then be changed in the deployment plan? Can the deployment plan change the bpel file?
We've tried using a default value in one of the xsd files but cannot figure out how to make an assign or transform grab that default or fixed value. It keeps saying null or empty. Is there a xsl function to grab this? We tried using @default on the end of the getvariabledata with no luck, but I think that's mixing schemas because default is part of xsd not our actual schema.
Thanks,I tried the customizeDocument but it causes errors. I must not be doing it right.
Is there a function similar to ora:getPreference() that will get the "Email_To2" property from the <configurations>??
In the bpel.xml below, I can change the "Email_To2" value using the deployment plan but can't get to it from the bpel code.
I can get to the "Email_To" value in the bpel code but can't change the value in the deployment plan.
<BPELSuitcase>
<BPELProcess id="Steve_Test" src="Steve_Test.bpel">
<configurations>
<property name="Email_To2">[email protected]</property>
</configurations>
<partnerLinkBindings>
<partnerLinkBinding name="client">
<property name="wsdlLocation">Steve_Test.wsdl</property>
</partnerLinkBinding>
</partnerLinkBindings>
<preferences>
<property name="Email_To">[email protected]</property>
</preferences>
</BPELProcess>
</BPELSuitcase>Thanks, -
Hi All,
I have a urgnt requirement where presently i am using a while loop and mapping the source payload to target as there is no change in the source and target.
Now i want to do a change in the transformation so i want to go to a transformation rather than assign inside the while loop.
ora:processXSLT('Transformation_3.xsl',ora:getNodes('inputVariable','payload','/client:loopProcess/client:CompleteAccount/ns1:Account[$Counter]'))
So what i need is i need to process a xslt inside a loop with a counter in the ora:getNodes() inside the ora:processXSLT() will the BPEL engine work with this kind of function in the assign.
this is a kind of wierd question but i am thinking of this way of approach is there any better way please do let me know any information is appreciated.
regards,
A
Edited by: user4498535 on Sep 25, 2009 11:46 AMHI all,
When i try to run the above code its giving me F00TY error , Is there any work around for this any ideas are rellay appreaciated,
Regards,
A
Hello to all can any one please lemme know why am i getting FOTY error ????? and will bpel engine provide the functionality which i am trying.. if not then is there any other way to accomplish what i really want to do.
Regards,
A
Edited by: user4498535 on Sep 29, 2009 1:23 PM
Maybe you are looking for
-
ORA-00372 error after DB backup
Hello, After performing a backup on tape using Amanda, one of the tablespaces is generating an ORA-00372 error. The DB is 10g1, on Solaris' SunOS 5.10. ORA-01110: data file 6: '[path]/filename.dbf' ORA-00372: file 6 cannot be modified at this time OR
-
Problem while updating the Support Package 17 on my SAP WAS SP9
Hi, I'm facing problem while updating the Support Package 17 on my SAP WAS SP9 ERROR 2006-10-13 10:23:22 FSL-06002 Error 2 (The system cannot find the file specified. ) in execution of a 'CreateProcess' function, line (284), with parameter (java.exe
-
Resize an existing flash movie
I have created a basic fading slide show of about 12 Photoshop layers in Flash CS3. Now the client wants to change the page will require the swf to be 40% smaller. Is there an easy way to do this without going back to Photoshop and rezing the image
-
Restoring time machine on a different mac
I'm trying to help a friend. Hi macbookpro died. He can't afford a new one right now, but has an old g4 cube. So now he wants to move the data from the dead laptop to the old g4. Fortunately he ran Time Machine backups to an external firewire drive.
-
Unable to create a transacted JMS Session
We have some code that worked perfectly under wls7.0 and earlier, but refuses to work under wls8.1. In our situation, we are unable to create a JMS Session with internal transactions. The result of the followin