Showing posts with label SOA. Show all posts
Showing posts with label SOA. Show all posts

Can the XSLT 2.0 Tokenize Function be used in SOA 12c

Symptoms:

Does the latest version of Oracle SOA Suite 12c support XSLT 2.0 functions as part of a BPEL transformation?

When using the tokenize function an error is reported during deployment.

ERROR
-----------------------
Parse Error in tokenize function


Cause:


Bug 6840672 : USAGE OF REPLACE() FUNCTION RESULTS IN XML-22018 PARSE ERROR

XPath F&O regex functions matches, replace, and tokenize are missing in XSLT 2.0 implementation.

Fixed in XDK 12.2, however no BACKPORT FEASIBL due compatible issues.




Resolution:


The tokenize function is not supported in SOA 12.1.3.

You may write a custom XSLT fuctions in Java to implement this functionality.







SOA 12c domain creation appears to hang on OPSS schema population


On : 12.2.1.0.0 version, Install - SOA

While creating a SOA Domain through the Config Wizard (config.cmd / sh), domain creation hangs on the OPSS Schema population step and takes a long time to finish.
Thread dump shows the below stack trace:

"Thread-22" #83 prio=6 os_prio=0 tid=0x00007fd214833000 nid=0x2786 runnable [0x00007fd20f9f8000]
java.lang.Thread.State: RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:170)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at oracle.net.ns.Packet.receive(Packet.java:311)
at oracle.net.ns.DataPacket.receive(DataPacket.java:105)
at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:305)
at oracle.net.ns.NetInputStream.read(NetInputStream.java:249)
at oracle.net.ns.NetInputStream.read(NetInputStream.java:171)
at oracle.net.ns.NetInputStream.read(NetInputStream.java:89)
at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:123)
at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:79)
at oracle.jdbc.driver.T4CMAREngineStream.unmarshalUB1(T4CMAREngineStream.java:429)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:397)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)
at oracle.jdbc.driver.T4C7Ocommoncall.doOCOMMIT(T4C7Ocommoncall.java:73)
at oracle.jdbc.driver.T4CConnection.doCommit(T4CConnection.java:910)
- locked <0x00000000c74ad780> (a oracle.jdbc.driver.T4CConnection)
at oracle.jdbc.driver.PhysicalConnection.commit(PhysicalConnection.java:2401)
- locked <0x00000000c74ad780> (a oracle.jdbc.driver.T4CConnection)
at oracle.jdbc.driver.PhysicalConnection.commit(PhysicalConnection.java:2407)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.basicCommitTransaction(DatabaseAccessor.java:439)
at org.eclipse.persistence.internal.databaseaccess.DatasourceAccessor.commitTransaction(DatasourceAccessor.java:405)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.commitTransaction(DatabaseAccessor.java:429)
at org.eclipse.persistence.internal.sessions.AbstractSession.basicCommitTransaction(AbstractSession.java:814)
at org.eclipse.persistence.sessions.server.ClientSession.basicCommitTransaction(ClientSession.java:182)
at org.eclipse.persistence.internal.sessions.AbstractSession.commitTransaction(AbstractSession.java:1018)
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitTransaction(UnitOfWorkImpl.java:1600)
at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.commitTransaction(RepeatableWriteUnitOfWork.java:650)
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitTransactionAfterWriteChanges(UnitOfWorkImpl.java:1615)
at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.commitRootUnitOfWork(RepeatableWriteUnitOfWork.java:285)
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.commitAndResume(UnitOfWorkImpl.java:1169)
...



Solution

Issue is on the database.  Configuration Wizard trace shows the call just waits for DB to respond.

Starting in 12c, SOA needs JPS to be on database. During domain creation the config wizard will populate the OPSS schema and this takes some time to finish. Usually it will complete in a min or 2 and you usually see the trace as above.


Can the XSLT 2.0 Tokenize Function be used in SOA 12c



Symptoms

Does the latest version of Oracle SOA Suite 12c support XSLT 2.0 functions as part of a BPEL transformation?
When using the tokenize function an error is reported during deployment.

ERROR

Parse Error in tokenize function

Cause

Bug 6840672 : USAGE OF REPLACE() FUNCTION RESULTS IN XML-22018 PARSE ERROR
XPath F&O regex functions matches, replace, and tokenize are missing in XSLT 2.0 implementation.
Fixed in XDK 12.2, however no BACKPORT FEASIBL due compatible issues.
Solution

The tokenize function is not supported in SOA 12.1.3.

You may write a custom XSLT fuctions in Java to implement this functionality.

Is there Documentation for SOA 12c Integration With "API Gateway"?

Problem:

There is a plan to upgrade SOA from 11.1.1.7 to 12c, and currently SOA is integrated with API Gateway. Is there information/documents related to the integration between SOA and API Gateway that will be impacted by the upgrade?



Resolution:

There is no intergration guide for OAG/SOA as such. But there is significant impact when upgrading SOA from 11.1.1.7 to 12c in case OWSM policies are used to secure any SOA service
to which OAG connects.

Oracle API Gateway 11.1.2.4.0 and earlier bundled policies for integration with OWSM are not certified with OWSM 12c. They are only certified with OWSM 11g policies.
Certification of OAG with OWSM 12c policies is planned for a future release.






SOA 12c EJB timeout values

Problem:

In 11g it was recommended to tune the following in concert to extend BPEL timeouts (in addition to the SyncMaxWaitTime and JTA timeout):

BPELActivityManagerBean
BPELDeliveryBean
BPELDispatcherBean
BPELEngineBean
BPELFinderBean
BPELInstanceManagerBean
BPELProcessManagerBean
BPELSensorValuesBean
BPELServerManagerBean

In 12c there are 4 additional EJBs:

BPELCacheRegistryBean
BPELCacheStoreBean
BPELClusterBean
BPELKeyGeneratorBean

Do they need to be tuned as well?


Resolution:

No, it is not necessary to increase the timeout values for the new beans in sync with the old ones


How to purge the ORASDPM schema in SOA 12c

Problem:

Document 1287036.1 (Purging ORASDPM Schema On SOA 11g) provides the steps to purge the ORASDPM schema in SOA 11g but how can it be accomplished in 12c?

Resolution:

The Auto Purge process in 12c does not purge the ORASDPM schema.

However, in 12c it is not 'ORASDPM' but has changed to 'UMS'.

The Only Change is instead of <Instance_Name>_ORASDPM, in 12c it is <Instance_Name>_UMS.

Jdeveloper composite deployment error : java.lang.NoClassDefFoundError: oracle/integration/platform/common/MDSSessionBuilder

Error 500--Internal Server Error
java.lang.NoClassDefFoundError: oracle/integration/platform/common/MDSSessionBuilder at oracle.integration.platform.blocks.deploy.servlet.MDSManagerUtils.getMDSSession(MDSManagerUtils.java:203) at oracle.integration.platform.blocks.deploy.servlet.MDSManager.transferCompositeData(MDSManager.java:494) at oracle.integration.platform.blocks.deploy.servlet.BaseDeployProcessor.deploySARs(BaseDeployProcessor.java:243) at oracle.integration.platform.blocks.deploy.servlet.DeployProcessor.doDeployWork(DeployProcessor.java:203) at oracle.integration.platform.blocks.deploy.servlet.DeployProcessor.doDeployWork(DeployProcessor.java:147) at oracle.integration.platform.blocks.deploy.servlet.DeployProcessor.doDeploy(DeployProcessor.java:134) at oracle.integration.platform.blocks.deploy.servlet.DeployProcessor.process(DeployProcessor.java:100) at oracle.integration.platform.blocks.deploy.servlet.CompositeDeployerServlet.doPostInsideLoggingSession(CompositeDeployerServlet.java:221) at oracle.integration.platform.blocks.deploy.servlet.CompositeDeployerServlet.doPost(CompositeDeployerServlet.java:130) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:138) at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:324) at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:464) at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:121) at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:211) at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:138) at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:324) at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:464) at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:121) at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:211) at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:163) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3730) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)