Академический Документы
Профессиональный Документы
Культура Документы
In SOA Suite 10g you can use the orcl:lookup-dmv function to lookup a DVM value in
your BPEL or ESB project. In the figure below it used in a Switch Process Activity of a 10g
BPEL project.
The figure below shows a DVM used from an ESB 10g project in an XLST Transformation.
15-1
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
In SOA Suite 10g the DVM has to be created in the ESB Console. With 11g you can
create a DVM in JDeveloper and reuse it in your projects. Note that in 11g the DVM function
name changed from orcl:lookup-dmv to dvm:lookupValue.
To use a “10g” DVM in 11g you need to make an full export of the ESB repository, this
will include all the DVM and XREF files. To create an export you can use a script on the SOA
Suite 10g server. Go to the integration/esb/bin folder in the SOA Suite Home and start the
export.bat script and add an output path.
Export.bat c:\dvm.zip
Copy the dvm.zip file to your JDeveloper 11g environment. You can use the same Ant
script for the DVM and XREF conversion. Open a command window and use the following
script:
set ORACLE_HOME=C:\oracle\MiddlewareJdev11gR1PS1\jdeveloper
cd %ORACLE_HOME%
bin\soaversion.cmd
8-2
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
-Dsource C:\projects\10.1.3\dvm.zip
-Dtarget C:\projects\11gR1\
This will generate a file called sca_XrefDvmFiles10g_rev1.0.jar. In SOA Suite 11g you
have now two options to use this DVM in your project.
Copy the DVM file to the composite and replace the oramds reference in the DVM
lookups.
In the first option you need to copy the DVM file from the
sca_XrefDvmFiles10g_rev1.0.jar to the composite project folder. In this migrated composite
application you need to check if the BPEL components and XSLT files uses a DVM lookup and
replace oramds;l for Example:
dvm:lookupValue("oramds:/apps/XrefDvmFiles10g/Country.dvm "
Or:
dvm:lookupValue('oramds:/apps/XrefDvmFiles10g/Country.dvm '
dvm:lookupValue('Country.dvm'
The second option is more complex, here you need to add these DVM files to the local
MDS and the SOA Suite 11g runtime MDS. For the local MDS you need to create a folder
(partition) named XrefDvmFiles10g in the local MDS apps folder of your JDeveloper
(jdeveloper\integration\seed\apps).
15-3
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
Add the DVM’s to this local MDS folder. To see the result make a MDS connection to
your local MDS in JDeveloper.
The next step is to deploy these DVM’s to the database MDS of the SOA Suite 11g
server. Navigate to the apps folder of the local MDS and add the XrefDvmFiles10g folder to a
zip file. Rename the zip extension to jar. After this you need to add this jar to a new zip file.
This zip file with the jar can be deployed to SOA Suite 11g by using the Ant deploy script:
set ORACLE_HOME=C:\oracle\MiddlewareJdev11gR1PS1\jdeveloper
cd %ORACLE_HOME%
bin\soaversion.cmd
ant -f %ORACLE_HOME%\bin\ant-sca-deploy.xml
-DserverURL=http://localhost:8001
-DsarLocation=C:\projects\11gR1\XrefDvmFiles10g.zip
-Doverwrite=true
-Duser=weblogic
-Dpassword=weblogic1
8-4
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
-DforceDefault=true
You can check this import by making a new Database MDS connection or you can use
the Composer application (http://yoursoaserver:8001/soa/composer/faces/login.jspx). In this Web
application you can change the DVM’s.
Or:
<xsl:variable name="setPriority"
select="ehdr:setOutboundHeader('/aq:HeaderType/aq:Priority'
,'5'
,'aq=http://xmlns.oracle.com/pcbpel/adapter/aq/outbound/;')"/>
The migration will remove this ESBHeaderFunction from the XSLT and add them as
assignment in the Mediator component. Probably this assignment input is not correct and you
need to correct this in the Mediator Component.
15-5
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
In this example the “to” value of the assign must be changed to the right AQ priority
property.
(2) Adapters
Adapters can be used from both ESB 10g and BPEL 10g. After their migration to 11g it
is advised to open all the adapter wizards and follow all steps to check for errors.
This can be resolved by migrating and deploying the reference Composite to the SOA
Suite 11g server. When this is successful you can open the Web Service Adapter and use the
WSDL URL of the reference Composite.
8-6
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
Open the Web Service Adapter and lookup the WSDL on the SOA Suite 11g Server. Go
to the Resource Palette and select the Reference Composite application.
15-7
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
This section will only dive into the JMS and AQ option. For standard JMS you need to
open the JMS adapter and select Oracle Weblogic JMS as JMS provider.
8-8
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
When you use AQ with JMS you need to select Oracle Advanced Queueing as JMS
provider.
15-9
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
You will get a selection of the all the JMS Foreign Server queues and topics.
8-10
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
When you select the Queue, JDeveloper will probably change your JNDI name. Correct this to
the original value.
(3) AQ Adapter
For AQ you only need to open the Adapter and follow the wizard till the end.
This error can be solved by removing the unused Toplink imports in the java classes or add the
Toplink library to the project.
15-11
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
The java class needed for the DB adapter with the Toplink imports which can be removed.
These changes are enough to successful deploy the Composite application to the SOA
Suite Server.
When you want to open the DB adapter to see if everything is ok or if you want change
something in the DB adapter wizard, it will give you a lot of errors. In 11g the DB adapter
wizard is build on the new Toplink implementation. If you still want to change this, take a look
at the “Remove the 10g code from the Composites applications”
After the migration you can optional do some cleaning up to get rid of now obsolete 10g code by
upgrading the Database adapter and remove the 10g toplink xml’s and classes.
In 11g the DB adapter wizard uses the 11g Toplink implementation, this explains the
errors when you open the DB adapter wizard. If you want to change this and remove the
8-12
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
unnecessary 10g files then follow these steps. Be aware this can lead to changes to the
Mediator XSLT transformations or the BPEL invoke activity parameters.
Adapter_10.tif Migrated 10g project with the necessary Toplink files for the DB adapter
15-13
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
Start the wizard for this Database adapter. You need to import the Database tables or procedures
again, define the relations between the tables and optional add some parameters to the queries
In 11g the DB adapter does not need any java classes or offline databases. These files are
replaced by the or-mapping and properties files.
WSDL import errors: you can get this error because the XSD used by the DB adapter is
moved to the xsd folder. Search for this XSD and add xsd/ to the import path.
Runtime error, XXX_toplink_mappings.xml not found. Open the jca file and change the
MappingsMetaDataURL property to the right XXX_ or-mapping file instead of
XXX_toplink_mappings file.
(2) BPEL
To successfully migrate a BPEL project to a composite applications you may need to do
some extra configuration work when you use one of the following in your BPEL project.
Properties
8-14
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
Sensors
Test Suites
Fault Policies
These after migration steps are described in the next part of this section.
<BPELSuitcase>
<preferences>
</preferences>
</BPELProcess>
</BPELSuitcase>
In 11g these properties are migrated to the BPEL component in the composite.xml.
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<component name="EmployeeSalaryApproval">
<implementation.bpel src="EmployeeSalaryApproval.bpel"/>
<property name="preference.ok">approved</property>
<property name="preference.nok">declined</property>
15-15
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
</component>
</composite>
These BPEL properties need to start with preference and can only be changed at runtime
in properties attribute of the BPEL component MBean. For this you need to open the System
MBean browser in the Enterprise Manager and find your composite application MBean.
Click on the properties attribute where you can change the BPEL property.
8-16
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
15-17
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
In 11g you also have BPEL Sensors only you have to switch to the Monitor view of your BPEL
process editor to see them.
In the right corner of the BPEL process you can switch to the BPEL monitor view.
To see the Sensor values of the instances of this BPEL component in 11g you need to open the
BPEL component in the instance view. The instances are accessible in the Enterprise Manager.
8-18
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
15-19
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
Because the 10g BPEL Test Suite are designed for BPEL and the 11g Test Suites only
work on the composite level , the migration removed the specific BPEL tests like an Assert in an
Assign activity.
8-20
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
BPEL 10g Test Suite with an initiate Message and an Assert check
If the 10g BPEL Test Suite has an initiate message then this is converted to an initiate
message on the Client Service of the Composite Application.
15-21
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
You need to add some extra tests on the wire actions in the 11g Test Suite to compensate
for the removal of the Assign Assertion Checks, else you only invoke the composite service and
not test the response for the expected result.
In 11g the Test Suites are included in the Composite deployment . This means you don’t
need to deploy these tests separately and you can run your Test Suites right the way.
In the Enterprise Manager you can make a new Test Case and select the Test Suites you
want to use in this Test. In the Test Runs or Instances tab you can follow the started instances of
these tests. Also see Chapter 17.
8-22
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
and has impact on every component in the composite application (see Chapter 16 for more
details on the 11g Fault Policy Framework).
For these reasons, you have to analyze the 10g fault policies and add the new fault
policies to the composite project. To do this add the fault-policies.xml and fault-bindings.xml
files to your composite project folder . It is a best practice to analyze both ESB 10g and BPEL
10g fault handling and integrate those into measures into 11g fault policies as you integrated (or
merged) ESB 10g and BPEL 10g projects into SCA composites.
The fault-binding.xml file associates fault policies to a composite or its components, just
like the fault –binding.xml located in the BPEL domains config folder.
<faultpolicybindings version="2.0.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schemas.oracle.com/bpel/faultpolicy fault-bindings.xsd"
xmlns="http://schemas.oracle.com/bpel/faultpolicy">
<composite faultPolicy="MyFaultHandler"/>
</faultpolicybindings>
Next step is to define the MyFaultHandler policy in the fault-policies.xml. The fault-
policies file contains the fault conditions and its actions. In this example when there is a remote
fault on a partnerlink it will wait for a human intervention before the BPEL instance continues.
15-23
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
Here is an example of the 10g fault-policy, this policy is almost the same as the 11g
version. You only need to add the faultPolicies Element.
8-24
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
Patch Set 2 or 11g R2 of the SOA Suite Oracle supports Composite Folders (partitions).
This makes it possible to group composite applications.
To see or change all BPEL parameters you can invoke or change the attributes of the
BPEL Mbean .
15-25
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
The BPEL MBean where you can change the BPEL parameters
This BPEL MBean will change the properties in the bpel-config.xml and soa-infra-
config.xml files. You can see these files in the JDeveloper Resource Pallette when you
8-26
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
package soa.demos.extensions.xpath;
import java.util.List;
import org.w3c.dom.Node;
import oracle.fabric.common.xml.xpath.IXPathContext;
15-27
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
import oracle.fabric.common.xml.xpath.IXPathFunction;
import oracle.fabric.common.xml.xpath.XPathFunctionException;
public GetNodeValueFunction() {
try {
if (args.size() == 1)
return evaluate(args.get(0));
} catch (Exception e) {
if (node != null) {
return ((Node)node).getFirstChild().getNodeValue().trim();
else
return String.valueOf(node);
} else {
8-28
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
return null;
In 10g you need to add this XPATH function definition to the Xpath-functions.xml file
(located on the 10g SOA Suite Server).
<classname>soa.demos.extensions.xpath.GetNodeValueFunction</classname>
<comment>
</comment>
<property id="namespace-uri">
<value>http://soa.demo/xpath/function</value>
</property>
<property id="namespace-prefix">
<value>demo</value>
</property>
</function>
In 11g you can control where you can use this XPATH function. For example use this
XPATH only in BPEL, Mediator or in all SOA 11g Components. To control this you need to
define this XPATH function and the definition in one of the following files.
15-29
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
package soa.demos.extensions.xslt;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
new SimpleDateFormat("yyyy-MM-dd");
8-30
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
try {
calendar.setTime(format.parse(date));
} catch (Exception e) {
calendar.setTime(new Date());
<extension-functions>
<functions
xmlns:customFunctions="http://www.oracle.com/XSL/Transform/java/soa.demos.extensio
ns.xslt.Functions">
</function>
</functions>
</extension-functions>
15-31
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
The 11g extension ext-mapper-xpath-functions-config.xml file looks like this. In 11g the
XSLT namespace still needs to start with http://www.oracle.com/XSL/Transform/java/
To use your own XPATH and XSLT function you need to add these jars in JDeveloper
(Tools Preferences SOA).
JDeveloper 11g SOA preference where you can add your extension jars.
You also have to put these jar in the SOA Suite domain. Add these jars to the (WebLogic
Server) domain lib folder.
8-32
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
OWSM 11g does not support a gateway; only agents. You need to use OWSM 10g for
now if you want gateway functionality.
There is no 10g to 11g migration tool available for OWSM. You have to do this step for
step and this chapter will guide you through the migration steps. The WSM migration steps
include:
15-33
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
Identify the 10g Web Services which have WSM Server policies
For these situations you probably have this WSM Gateway not installed on the Soa Suite
Server, so you can still upgrade the 10g Soa Suite server to FMW and upgrade this WSM
Gateway at a later time when Amberpoint is fully integrated in FMW. The FMW license still
allows you to use WSM 10g.
8-34
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
clients. These policies are immediate active, you don’t need to restart the Weblogic Server. In
10g after configuring or changing a policy you always need to redeploy this WSM Server agent
to the Oracle Application Server or when it is a client policy you have to deploy this to a folder.
WSM 11g is not only fully integrated in the Oracle Weblogic Server but also in the
Fusion Middleware Development environment. In JDeveloper 11g you can also add the WSM
policies to a Composite Service, Composite Reference, an ADF Web Service DataControl or a
Web Service Proxy Client. In 11g adding policies to a Web service or Web Service Client is not
so difficult and is not only an administrator task.
The best way to add a WSM policy to a Composite Service or Reference is to do this in
JDeveloper. Then every version of the Composite Application deployed on the Weblogic Server
have these WSM policies. In the Enterprise Manager you can only define a WSM policy to one
version of the Composite Application. This means that the administrator needs to add the
policies for every version of Composite Application and after each deployed of a new version .
(3) Policies
OWSM in FMW 11g have the same policies as WSM 10g but in 11g this is different
organized. In 10g you can add one of more steps to a request or response pipeline. So you can
have Decrypt and Verify Signature combined with a SAML Verify WSS token..
15-35
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
In 10g you have to define the pipeline steps for the request and the response and for the
client and server policy. In 11g you have assertions like signing or logging and these assertions
can be combined to a client and server policy .
8-36
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
The first step in the WSM migration is to know which Pipeline steps are used in WSM
10g, when you know this then you can determine which WSM 11g policy matches with the 10g
policy steps. In the Manage Policies page of the 10g Web Services Manager Control Application
you can see all the enforcement points and from here you can open the policy page.
15-37
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
(3) Logging
In WSM 10g you can see the messages log in the Operational Management of the Web
Service Manager Control application. In FMW you can’t see these messages in the Enterprise
Manager. To take a log at these messages you need to go to your SOA Suite Weblogic domain
and go the owsm logging folder
(user_projects\domains\soa_domain\servers\soa_server1\logs\owsm\msglogging). Here you can
open the diagnostic.log file.
8-38
Oracle 11g SOA Suite Handbook: Complement to Appendix A August 1, 2010
The location in the Weblogic SOA Suite domain of the WSM logging
For more information about choosing the right WSM 11g policy which matches your 10g
policy steps see the Interoperability Guide for Oracle Web Services Manager manual, part of
the Fusion Middleware 11g documentation.
15-39