Start your engines - here is a list of new SOA Suite 11g PS2 features (all of the below, except BPEL 2.0 are production ready and supported)
- SOA Infra's (based on ) becomes full production.
- Inbound / outbound EJB 2|3.0 binding for composite services
- Transparent wsdl2java and vice versa mapping (including async callbacks) at design time and runtime, including support for SCA's "interface.java"
Buildfile: C:\JDeveloper\11.1.1.3\jdeveloper\bin\ant-sca-compile.xml
scac: [scac] Validating composite "C:\_Business\11g\samples_new\soa_samples_spring\spring-105-AsyncInterations\composite.xml" [scac] ### clazz: interface asyncinteractions.spring_105_asyncinterations.com.example.AsyncInteractions [scac] ### qname: { [scac] ### clazz: interface asyncinteractions.spring_105_asyncinterations.com.example.AsyncInteractionsCallback [scac] ### qname: {http://example.com/spring_105_asyncInterations/AsyncInteractions}AsyncInteractionsCallback
- External EJB data-binding mapping support (based on toplink's external mapping facility)
- This allows to specify type mappings (e.g. list -> list <Employee>) without code modifications, just by adding a side file like the below into the classpath <java-web-service-endpoint xmlns=" xmlns:oxm=" databinding="toplink.jaxb"> <xml-schema-mapping> <toplink-oxm-file file-path="./Team-oxm.xml" java-package="jwsur.exmteam"/> </xml-schema-mapping> <java-methods> <java-method name="getTeams"> <java-params> <java-param> <oxm:xml-element type="jwsur.exmteam.Team"/> </java-param> </java-params> </java-method> </java-methods> </java-web-service-endpoint>
- Additional component implementation / bindings in the designer
- Full support for sync / async interfaces, mapping between the component's interface & callback interface and "sca:service -> bean -> sca:reference" to adhere to spring's development model and don't force developers into a BPEL' alike model
- Audit-trail / flow trace support for new components and addition to Fusion Order Demo [partner supplier composite]
- Additions for EM / flow trace
- and of course ..
- default "partition" always exists, others can be created on demand via wlst / ant / EM
- Note that partitions in the first incarnation only support grouping features, and no tuning of threads or alike (yet)
- Audit trail saving can be configured
<auditStorePolicy>syncLocalTransaction</auditStorePolicy>
<asyncAuditQueueSize>10000</asyncAuditQueueSize> <asyncAuditPersisterThreads>5</asyncAuditPersisterThreads> <auditBatchSize>10</auditBatchSize - Conceptually
- sync (same thread / local transaction)
- aysnc (single / batched)
- This allows us to provide a complete trail, especially in the case of rollbacks or unhandled faults - no matter what happened to the underlying "working" transaction. At this point we are also adding "global" messages as the ones below to signal what happened with the working transaction, below is the native trace that gets rendered by the UI
<event sid="BpPrc0.1" cat="2" n="8" date="2010-02-24T17:07:05.953-08:00" type="4"> <message>"BPELFault" has not been caught by a catch block.</message>
</event>
<event sid="BpPrc0.1" cat="2" n="9" date="2010-02-24T17:07:06.391-08:00" type="2">
<message> The transaction was rolled back. The work performed for bpel instance "2" was rolled back, but the audit trail has been saved for this instance. </message>
</event>
- <bpelx:checkpoint/> was introduced, which will return the thread in order to have the engine hydrate and the instance will be continued by an engine thread later.
- (which adds <bpelx:checkpoint/>)
- (which adds async audittrail persistence)
- (which fixes a transaction / fault propagation issue when a child process gets or creates a RuntimeException)
- (fixed for various scenarios around master / detail calls with rollbacks, fault handling)
- Support for re-sequencing (at operation level), this was a regression from 10.1.3.5 where we introduced this feature.
- We introduced extensions to <binding.ws> - to enable support for xml / http support, inbound and outbound
- This is helpful for two use-cases
- fast, high performance, secure & transactional inbound invocation of a composite service (including a very lightweight client API)
- the integration with the upcoming OSB 11g release, including support for async callbacks
- Full editor and simulator in JDeveloper (Business Analyst and Implementation Perspective)
- Web based (browser) customization, process portal and declarative metrics
Warning: the above is a non-exhaustive list and there are features that ship in preview mode (e.g. the BPEL 2.0 runtime) in this release.
We encourage you to test and experiment with those "preview" features, but there is no production support for those.