Email(optional) Please enter one question you would like answered during the webinarAnswer
Suresh.gannavarapuWill the presentation from the session be made available for future reference?Yes, slides and other content are available at:
arnab.majumdarHow does work managers work and scenarios in which they should be implemented
(Kiran) This link offers a good introduction to OSB WorkManagers and how they are used:
suhasini.krishnan.udayarHow to perform throttling in OSB?(Kiran) This section offers a comprehensive discussion about the two types of Throttling available in OSB. One is throttling at the Business Service Level and the other is ThrottlingGroups -
vishal.rastogiOSB performance issues(Ben) OSB is a stateless engine. Up until OSB 11g there was no need of any database.In 12c, Oracle has made database manadatory of OWSM security. However, all the runtime activities are still stateless and in 99% of cases can be tuned to run faster. Use JMC (Java mission control) flight recorder feature to analyze your performance bottleneck and do performance tuning. OSB can provide metric at activity level to understand which activities in pipeline are taking more time to execute. I think Oracle should make database requirement for OSB optional instead of mandatory.
hemanth.lakkarajuDoes OSB, BPEL & JDev support same WSDL Reader/Parsers?(Kiran) Generally, Yes, they use the same underlying WebServices stack that comes with WLS-JRF.
stanleyjacksonWhen to use OSB vs SOA?(Kiran) OSB provides service virtualization with mediation capabilities (security, protocol bridging, data transform) and some endpoint management capabilities (throttling etc.). OSB is a stateless engine and deals with req-response scenarios. SOA (BPEL) is a full-on stateful process orchestration engine and provides capabilities to build long running stateful processes
xiao.huangwhere is OSB service metrics stored? (for both current aggregation interval and since last reset)(Kiran) In a custom file store in the domain home. OSB also has native integration with CloudControl and publishes metrics to it. EMCC can store them in a database and provides long running heuristics and analysis on this data
botha_jacquesWeblogic thread management : tips on how to prevent stuck treads / hoggers, as far as that is possible.(Dave) this session should go into this topic in detail. Please ask any follow-up questions that remain after the presentation. For others, you can also see a discussion on the stuck thread issue in Sherwood Zern's session in a previous SOA Expert Series webinar, at:
roman.pakREST and OSB?(Dave) OSB had REST support in 11g, but the rest of SOA Suite less so. However, in 12c, both the OSB REST support has been greatly enhanced and also added to the rest of SOA Suite (including JSON for data and transformations). There are lots of docs on OSB 12c REST support out there, including the core product docs, plus many third party blogs from people like A-team, partners and independents. So many that the best thing is probably a google search, e.g. search for OSB 12c REST.
rajagopal.varadharajanthe number of connection pools introduced in 12c for OSB is causing BT a lot of pain, as we have now got to provide 350 database(Dave) Technically, OSB needs a database for a few select features like sequencing and OWSM security and this database dependency was introduced in 12c (11g OSB could run without a database). Theoretically, Oracle could implement OSB such that you only had to provide database connections when you used the features that require a database, but the product management team indicates there are no current plans to do so.
KALYAN.KARRIWhat are the out of box solutions from Oracle SOA Suite 12.X for REST services, OAuth2.0?(Ben) Support for REST services is significantly enhanced in SOA 12c. You can use following activites/adapters to support JSON:
1. JavaScript activity
2. Rest Adapter (WSDL based rest services that accepts input in either JSON/XML and returns the response in either JSON/XML).
3. Translate activity (converts received JSON request to XML or vice versa based on native XML schema).
siva_p_boppanaOSB service callouts are invoking third-party webservices multiple times.(Kiran) Check to see if you have retries configured in the business service
thayumanavan.muthukumaranEase of Integration with simplified deployment and administration with better performance and scalability(Ben) 1. OSB Templates (Develop one time use many times): With the introduction of OSB templates, development has become simpler atleast where the same code is used in multiple services.
2. Continuous Integration: Starting from 12c, OSB services can be deployed using Jenkins or Hudson. Oracle has provided maven plugins for OSB which can be used in any of the above tool for continuous integration.
dilip.jainHow are these OSB internals different in 12c?(Dave) The content in this session applies to both 11g and 12c
venkata.cWill there be a similar session on Oracle SOA in future?(Dave) Hopefully - some of the content exists, which makes things easy. Some would need to be created. Stay tuned…
tarukumar.hanumantuWhat’s your view on the persistent stuck threads issues?Quality of the OSB product? why don'tJava process utilize multiple CPUs?(Ben) Use load testing tools like Jmeter and JMC (Java mission control) flight recorder feature to better understand why threads are stuck. OSB is not meant to run large java process. Java activity is only there to write minor utilities. But if you need to write lots of java code, you can off load java process as a separate webservice or REST service or EJB and invoke it from OSB. This way you can isolate faulty java payloads to different process and not clog the entire service bus. 99% of time there are persistent stuck thread issues due to design problems.
dollyakikitransactions handling: risks , best practices and performance-would like to know about security in future webinars(Kiran) OSB is generally stateless but can participate in an XA transaction or initiate one if needed. A web search for Oracle Service Bus and Transaction should provide some reference links
jralmaraz1What are the recommended coherence topology and configuration setup for high performance environments? Thanks.(Ben) There are multiple topologies supported by coherence including a few feature in 12c product where payload may be cached in tertiary disk space (flash storage) which frees up the OSB memory, so depending on usecase, different coherence topology may be used.
mario.sosicpipeline, jta, read timeout(Ben) OSB allows you to specify the timeout settings at business service level, if no timeout settings are provided it uses the default JTA timeouts provided by oracle. It is always a good practice to set the timeout settings at business service level.
ilan.salvianoXML to json transformation in details would be super cool ...(Ben) Starting from OSB 12c (12.1.3), OSB has included inbuilt JSON supportivity. You can use following activites/adapters to support JSON:
1. JavaScript activity
2. Rest Adapter (WSDL based rest services that accepts input in either JSON/XML and returns the response in either JSON/XML).
3. Translate activity (converts received JSON request to XML or vice versa based on native XML schema).
nate.kresseThoughts on trends towards RESTful services(Kiran) OSB 12.2.1 adds support to build full on native REST services with support for JavaScript based transformation -
hemal.shahI would like to really understand in detail about thread management in OSB.(Kiran) The threading model is generally asynchronous and threads are relinquished so they can go back to the pool to service other requests anytime the engine needs to wait on something. There are some exceptions to this (like when QoS is set to exactly-once, for example)
kkingWhat are the key decisions to use OSB over SOA? What benefits does OSB offer that SOA wouldn't handle very well?(Dave) OSB is of course part of SOA Suite, from a packaging perspective. But for the decision as to when to use OSB and when to use SCA Composites and BPEL, a general guideline is to use composites and bpel for long-running or stateful processes or complex orchestration logic. Use OSB for service virtualization and simple, short-lived logic. A good discussion at the next level of detail is at:
sharavanan.chakarabaniOSB capable of handling exceptions on transactions such as rollback and commit and recovery?(Kiran) OSB executes in a stateless and transactional fashion and can participate in an XA transaction or initiate one if needed.
raghav.saxenaHow can we handle the thread management in multiple proxy services(Ben) Create work managers with min and max thread constraints and use it for the proxy services instead of default Work managers.
ankush24.agarwalHow Sockets impact performance of OSB and Can we control that?(Ben) This can be avoided by using socket time out settings at business service level.
ravi.muniyappaHow ICS is different from OSB other than SaaS based cloud offering?(Dave) Aside from the fact that ICS itself runs in the cloud and OSB is available in the cloud or for on-premise deployments, there are some other difference currently to help customers decide which tool to use. ICS is based on OSB architecturally, but offers an easier to use interface which was designed from the beginning for integration with cloud systems/services. OSB conversely will offer a greater degree of control and "knobs" to tweak. Obviously, OSB has been around for many years and has a maturity from that. While ICS is built on the same technology as OSB/SOA Suite, some of it's features are newer. OSB is purely for short-lived, stateless services, whereas ICS does include some additional orchestration integration patterns. OCS is fully managed in the Oracle public cloud, whereas OSB would be for the organization that wants to manage and control their integration software. ICS will offer an easier adoption curve, especially for Apps IT type skillsets, whereas OSB will be very comfortable for Java/J2EE developers. Of course, only the Oracle people can officially comment on how these two will evolve over time...
donald.eytelIs it okay to WorkMangers assigned on to BS to share a Min Constraints of 2 or should all BS have their own min Constraints?(Ben)Yes, we can create as many as WM's based on requirement.
ravibandSOA Integration with EBS(Dave) This isn't really specific to OSB or internals, so we won't cover it in this session, but for more detail, see the EBS adapter docs. e.g. Also, content like the following (this is 11g based, but applies in large part to 11g or 12c):
balaji.rangarajanOSB 12.1 : Why we have MFL activity supported in OSB pipeline , but not supported in XQuery to transform the same(Kiran) OSB pipeline does support XQuery
david.mossHow do we manage 1000 services in one OSB cluster, is this possible, what are the pros/cons(Ben) Why 1 OSB cluster, within same domain you can create multiple OSB clusters and host functionality based on logical groupings.
k.vikramsettydoes micro services architecture still need ESB's and SOA products like osb, soa suite? What is the future for osb/soa suite.(Ben) OSB architecture can support microservices quite easily and future is bright as more and more integration are moving towards REST based, lighter microservices.
amardeep.bhatiaService Bus Threading Model(Kiran) The threading model is generally asynchronous and threads are relinquished so they can go back to the pool to service other requests anytime the engine needs to wait on something. There are some exceptions to this (like when QoS is set to exactly-once, for example)
jlockhartHow is a split-join throttled in OSB 12c, since there is no longer a Business Service associated with the split-join?
prakash.umaraniaService Bus position and role in Enterprise Architecture(Ben) Service Bus plays a key role in Enterprise Architecture, it supports the following:
1. Endpoint Routing.
2. Endpoint abstraction.
3. Throttling.
4. Message enrichment.
skatdareWhy OSB does not release Bundle Patches alongside SOA forcing customers to maintain costly one-off list?
shankar.ub(1) In the Cloud space, is ICS a replacement for OSB?.. (2) With ICS,SOA,OSB, which needs to be used when?ICS is not a replacement for SOA or OSB. ICS and SOA (SOA Cloud or SOA Suite) are complementary offerings. In fact many customers are using a combination of both to achieve their business end-goals. But, some factors that would influence your choice of tool within the Oracle Integration portfolio include:
a) Gravity of your Apps (cloud, on-prem etc)
b) Existing investments in SOA Suite (several customers use a hybrid approach with ICS in cloud and SOA on-prem)
c) SOA Cloud Service is an easy foot in the door to the cloud (lift and shift) and very useful for dev/test
d) ICS customers have access to pre-built integrations delivered by partners and Oracle, and capabilities such as Oracle Mappings Recommendations and typically have faster time to market, as also demanded by the SaaS Apps they onboard or use.
e) SOA Suite currently supports a few integration capabilities such as long running transactions, several BPEL constructs, advanced fault handling, continuous availability capabilities such as circuit breaker etc that aren't supported in ICS today. However, eventually they will all be available in ICS (via the elevated user experience).
f) ICS releases are more agile/frequent - you will receive new features at a faster pace. SOA Suite releases are less frequent.
g) OSB/SOA already has a large Partner/Developer pool - its not difficult to find a partner who can build/deliver integrations. The ICS community is ramping up now.
h) ICS naturally aligns well with Agile development projects
cthangeswaranDebugging OSB processes(Ben) 1. Add log activites at required level.
2. Add Custom alerts.
3. Enable Monitoring from EM.
4. SLA alerts.
5. Testing from pipeline level directly.
6. Enable tracing from EM
rck3Can we monitor WM utilization metrics in real-time?(Ben) Yes, this can be done using OEM
anne.delos.santosWhat is the relationship between transports and adapters in OSB(Ben)Transport (HTTP, FTP, JMS etc) based business services allows you to communicate with the resource directly, Adapter based business service uses JCA based connectivity to communicate with resources.
siddharth_duggalIs OSB 12c part of SOA 12c Suite bundle or do we have to pay a separate license/subscription fee?(Dave) OSB is part of SOA Suite bundle, so as long as you deploy it on any boxes licensed for SOA Suite, you are covered. This applies to any versions of the product.
venkatachalam.goturWhenever a provider service (business service) responds slower, we have seen that the whole OSB domain deteriorates and hangs
david.heckselWhat mechanisms are available for integration with a Hadoop Cluster? If any, which do you recommend? Can OSB speak Kafka?(Ben) Yes, a Kafka transport exists for OSB from a third party. Contact us and we can guide you how to configure Kafka with OSB. (
infoWhat workmanagers and thread constraints settings would you always apply to large scale, clustered OSB domain with 200 services?(Ben) 1. Min / Max thread constraint is the most common one.
satyachakkaAny plans of opening up translator for JSON to XML and vice versa for Message Flow or BPEL Composites to make use of it ?(Ben)OSB 12c supports conversion of JSON to XML, XML to JSON with the following activities/adapters:
1. Rest Adapter ( the rest engine by default converts the JSON to XML if provided in the settings)
2. JavaScript acitivity.
3. Translate activity.
bvssnraju306Best ways to analyze weblogic threadump for osb services(Ben) Use JMC (Java mission Control)
sniemanwhat about network channel configurations? I don't see much information on optimal configurations for JMS/t3s and https usage.(Dave) I spoke to the Oracle team responsible for the Enterprise Deployment Guide about the specific issue behind this question, and they suggested that multichannel configuration is not needed in 12c and that this is specific to Exa*, since multi-channel configurations are rarely used for commodity hardware and even for SOA the benefits on exploiting IpOIb channels kick in only with large payloads and add a lot of complexity. This is covered in the 11g Exa* EDG, I'm told, but they will update it if/when they do an EDG refresh for 12c.
jan.korporaalwlst & executeDump(name=’OSB.derived-caches’), understanding the output, what's alright and what's not(AshokShukla)Sample output:-

<derivedCaches xmlns="">
<derivedCache cacheType="WsdlDefinitions">
<ref>SOA Send Email/Artifacts/WSDL/SendEmail/WSDL_SendEmail</ref>
<ref>SOA Send Email/Artifacts/WSDL/ValidatePrid/WSDL_CheckValidPrid</ref>
<derivedCache cacheType="RouterRuntime">

Elements :-

cacheType - What type derived cache for e.g: WsdlDefinitions,RouterRuntime,ProxyService etc...
configuredEntries:- capacity of derived cache
cacheEntriesInUse:- size of derived cache
totalHits :- number hits for derived object already exists in the derived cache
totalMisses :- number hits for a derived object, that is not exits in the cache.
hitRatio :- totalHits/(totalHits+totalMisses) in percentage
totalComputeTime: sum of all derived object's compute time
totalComputeTimeForHits: sum of (number of hits of derived object*compute time for that derived object)
cacheEntries:- List of cacheEntry
cacheEntry:- What is the Resource name, creation time and compute time for that derived object.

Check for totalMisses number, if it is larger than cacheEntriesInUse, means derived objects of this cache GC'ed frequently.
cg250196How do we manage work managers if we hundreds of proxy and business services. Is there any global recommendation.(Ben) 1. Use WLST scripting to automate creation and maintainence of work managers. 2. Use a continuous integration tool like Jenkins and/or Hudson to automate deployment process. 3. Do lots of testing to ensure work managers are working as designed.
aquirogaOSB Circuit Breaker Implementation(Dave) The new Circuit Breaker feature in SOA Suite 12.2.1 is implemented at the SCA level, so it applies to SOA composites, but I think not to OSB services or pipelines. Also note that is is available as part of the Continuous Availability option, so may require additional license. For more info, see the docs at (hopefully this link will work). For OSB specifically, it has had a throttling capability that is different, but very useful. More info on that at:
roshParab1984Caching, Work Manager, Best Pracices(Ben) 1. Caching: This is the best practice if we are expecting the same response from the client everytime or for specific time interval. An example would if we trying to get a token from client and it expires only after an hour, then it's good to cache it for an hour that way we wont call service every time instead we fetch the token value from Caching.
2. This link offers a good introduction to OSB WorkManagers and how they are used:
Nurlan.Nurmanovhi David, thanks for the organizing such webinars, they are really helpful. I would like to ask an Oracle A-Team members, how would someone engage them in project?(Dave) Sure, thanks. You engage the A-team through your Oracle account team who contacts A-team mgmt. But they are a *very* limited resource. On the sales pitch side, if you want a similar level of expertise from a partner you can contract with for deeper engagement, please email me at and I'm happy to make some introductions and/or help you find the right people/skills.
jorge.quilcateWill Kafka transport be included in next releases?There is currently no plan for an Oracle Kafka transport. ODI includes Kafka integration. However, as mentioned above, partners have experience helping customers leverage an external Kafka transport for OSB. Contact for more information.
Nurlan.NurmanovMaybe this is not related to OSB, but as someone mentioned ODI, is there some reference project, which can be downloaded for training and learning? The VM does not seem to have a complex project.The VMs include the labs we use for training, and tutorials can also be downloaded from OTN
bharath.pepaalahow do we fix the sruck thread issue when using service calloutuse different WM in business service, not same WM as of proxy service. also configure read/response timeout in business service
donald.eytelWhat should determine when to use Publish or Route?Publish is one way (fire and forget). Routing can be one way(request only) or two way(request-response)
rajatgaur1For which transports does Route node blocks ?by default EJB, JEJB, SB transports are blocking calls. As Mike is saying QoS has also make some transport use blocking call.
rajiv.ranjanIs there any case where OSB will not honor the read timeout set on business service?Generally, it is good practice to set read timeout on business service. If it is not set properly then it picks tiimeout from default JTA timeout.
Jang-Vijay Singh
what is the impact of "quality of service" property on the blocking behaviour of publish
When QoS is exactly-once, the publish action waits (blocking call) until the response from the target service is available, although the response itself is discarded. When the target is a business service, the publish action waits until the business service response is available. When the target is a proxy service, the publish action waits until the proxy service's response pipeline completes.
Jang-Vijay Singh
what is the impact of "quality of service" property on the blocking behaviour of publish
When QoS is best-effort and the target service is a one-way proxy service or a one-way business service with retry count > 0, the publish action waits until the target service returns. With a one-way target service there is no response, but the publish action waits until the request is delivered.
surendran.anupWhen the QOS is exactly once you mentioned it allows you to handle errors. What type of errors can be handled this way that cannot be without the QOS. e.g. if the service is down will the QOS of best effort not return an error?In 12c, as the proxy is split from the pipeline, you can invoke one pipeline from another. That replaces a local proxy
With the micro-services concept growth, has OSB being improved in terms of monitoring and workflow management to better manage the smaller spread services? Is there any architectural reference of OSB usage on a microservice toplogy?
In 12c Rest capability and javascript activity is significantly enhanced, which aids in building micro services.
rajkiran_vajreshwariWe have seen duplicate invocation of Business service using service callout.Check your return count at the business service. Is your client request being retried by any chance?
hemal.shahBusiness service retry will block the Request proxy thread until business service response or different behaviourIn general, it is good practice to set timeout on business service.
surendran.anupFor publish you mentioned it is blocking when the service is one-way. I am assuming it is the calling service and not the called service.OSB is blocking in this case so yes, the client would see this behavior
srinivas.pusaHow does threading work for java callout?java callout will execute on the same request or reponse thread. java callout is meant for light/utility type work, but if you large chunk of work which needs to be executed in multi-thread model, then encapsulate it as seperate rest service or webservice or EJB service and invoke it in OSB.
Nurlan.NurmanovRegarding the stuck threads question, how would someone identified the real cause of stuck threads?In 12c, jdk comes with jmc (java mission control) which allows you to take thread dumps and also flight record. I find it useful in debugging stuck threads.
Also: From Thread dump. Check how locks are held up by what thread and what threads are waiting for that lock. This will give some idea on stuck thread.
polaganeswara.gadiHow is threading when it's processing high volume data?Message volume does not alter the threading model. Threading characteristics are goverend by QoS setings and specific transport types
sohail.a.siddiquiwhat replaces local protocol in 12c?Local transport still exists. Pipeline of one folder can not call a pipeline in another folder. Here you have to use local transport.
ashwin.somasundaramFor HTTP even with Best Effort , errors are returned , so in which scenarios we have to use Exactly Once for Route ?Best effort does not imply that error are not returned to the client. If the outbound invocation failed or the pipeline encounters other errors, these need to be communcated back to the client by executing the error handler
donald.eytelWhen you talk about request queue what are you taking about. How do you see the request queue size?Yes, you can see the request queue size. The request queue is an in-memory queue in WebLogic server which handles all in-bound requests - RMI, sockets, queue input, etc. These all come into the same thread pool and when there are more requests than the server can handle, they get stacked up in the request queue.
sohail.a.siddiquiare the statistics related to processing time or number of requests supported by WLDF module/framework for OSB?OSB instruments and computes these. WLDF provides the file store
monish.munotEmpty response pipeline creates any issue wrt threads?it shouldn't
balaji.rangarajanWhy dont we have a basic wait activity in OSB , where customer want to hold the thread for 30 sec before processing.?I think there might an XQuery function that does this. Why would you want to do this? I would hihgly discourage this. If all your availale threads are waiting this will have disastrous consequences on the system overall
Gaurav SaxenaIs the OSB reusult caching available remotely? I mean, can we invalidate or update that cache entry from external system for eg. using a SOA Suice JCA coherence adapter?I don't believe we have API exposed for external services to alter the cache.
sohail.a.siddiquiWhen should a workmanager be used, are there best practices available?use mix constraint on callouts, I usually do lots of load testing before justifying a work manager constraint. Also, WLST script can be used to create WM/constraints. Then use continuous integration tool like Jenkins or Hudson to deploy them. These are general recommendations...avoid conf changes directlyfrom osb console specially if you are managing large number of services and WM accross teams.
arun.govindarajuluUnlike 11g, in 12c, by default, a different WM is used for business services, isnt it?Yes
Chitti Kusumacan you have more than one work managers for a specific service?no
anuroop.kattawhat happens when we use a service call out in Route Error handler?Nothing wrong with this. you may have a legitimate use-case to consult and external service to translate an error code.
aquirogaWill OSB have a Circuit Breaker mechanism like SOA Suite? Actually I am using an custom implementation with SLA JMS Alerts, custom xpath functions, templates and a Pipeline that handles the JMS alerts and updates a CB table that custom xpath function lookup to know if the circuit is open or closed.We are considering adding circuit breaker to Service Bus at some point, but don't have an ETA right now
aquirogaHi, the $inbound variable is defined in the Proxy, when with pipeline to pepiline call will the second pipeline use the $inbound from the first Proxy?yes
amit.atreHow to migrate sun enterprise service bus to OSB and challenges
sampathkumar.kathirvelSOA Best practice or tuning parameters deployed on OPC
barry_middlebrookWhy is the process for incorporating an XSLT different for BPEL vs pipeline vs split-join?
Sandip.BhadraHow many max threads can an OSB domain spawn if all the Proxy and Business Services use the default work manager
Sandip.Bhadrain 12c will there be ny differnt thread for the proxy service?
ajay.natarajanImpact of dispatch policy with different constraints (min, max, fair share class)
Sandip.BhadraWhat happens if I use QOS as Exactly once with a Publish?
abhishekmaini91if the service will be one way way then how will it be blocking in case of publish?
muthukumar.alaghappanwhat is the scenario if Pipeline calling another proxy without using business service
in 12c I used custom JNDI Provider properties to add a new connection factory to handdle the EJB request Timeout of T3. This impact to all the EJBs using that JNDI Provider. Is there any way to do this for each EJB call?
kkingIs it possible to have an OSB service that is synchronous (to respond with an ack) and then continues asyncronously. Does that hold/block the thread?
What about the Local transport based proxy, does it support service optimization (use same thread from main)?
sachin_adhauProxy to Proxy local VS http protocol. Local performs better, can you please tell how.
soumen.nandi01How does the XA transaction play in the threading and timeout... we see XA transactions hang even after hitting timeouts set on Services.. what happens to the threads in XA transaction... do they wait till XA timeout is hit at the domain level?
ranganath.ambatiEven though publish is a one way transport, Is there any cases where we can block the thread using publish operation?
Gaurav SaxenaIs it possible to use owsm policies while using MQ transport?