How to assign starting order to SOA composites

Hi,
we have several soa composites deployed into the same partition and we are developing a new composite that use some of that composites as providers, this new composite will be deployed in the same partition, but when the server is restarted this new composite starts before the others causing an error and leaving the new composite in a unrecoverable error.
The specific question is: Is there a way to configure the start order (or priority) for each composite?

Thanks for the suggestions.
The last 3 days i was deploying the composites to a fresh installation of SOA infrastructure without the restart problems. The only difference is that in the new server, the first time I deployed the composites was in the correct order, ie:
The composites A, B and C are independents of each other,
The composite D depends on 3 ws providers (A, B and C)
so, the order to deploy was: A, B, C and last D
I restarted the server a lot of times but it always publish in that order the applications. I can redeploy the composites and restart the server and the error don't occur again.
The difference of my deployment in the old server was:
1. I created and deployed the independents composites A and B.
2. I created and deployed the composite D using as ws providers A and B.
3. I created and deployed the independent composite C.
4. I modified and redeploy the composite D to use as ws provider the new C composite
All works fine but every restart the server failed to publish D composite.
It seems that if I always deploy the composites for first time in the correct order It will work fine, the problem is that if in the future we add a new service E and try to make it a new reference to it from D we will need to undeploy and redeploy D.... that is really bad.
I will do more tests about this deploy and publish orders and if I found something useful I will post it for your reference. I don't have a good solution yet.
Now reading your suggestions I can see that the problem is the availability of the WSDLs, yesterday I configured the service registry in order to add all this services. My next task is to reconfigure my projects in order to get the WSDL from the service registry, I think this could solve the problem, If not, I will read about the use of the MDS to implement one of your suggestions

Similar Messages

  • How to assign an order to a GL account

    Hi all,
    Can anybody please let me know how to assign an order to the GL account?
    Thanks,
    S.Sumana.

    Hi,
    There is no such an assignment. When you post a document, you define your G/L accounts and cost objects. If you want to make a default internal order for certain cost element, you can go to KA02 or OKB9 and define the defaults there.
    Regards,
    Eli

  • How to create incident rule for SOA composite faulted instances

    Hi Experts,
    How can I create an incident rule for creating an incident when a SOA composite instance goes faulted. I want to notify the administrator when any of the SOA composite instance gets faulted but I am not able to undestand in my incident rule what type of event should be used,in-short I am not able to understand how can I create a rule for eveluating SOA composite faulted instances.
    I am posting this query third time here. Please suggest me a solution or is this a limitation of OEM 12c Cloud Control ?
    Please help...its eally urgent!!!

    Creating Incident rules is a very simple process as long as you know what event you wanna create your rule one. In your case specifically, its even more simple since you already know your target type and metric name.
    Steps:
    1) Create a rule set.
    2) On the same page hit "Targets" tab and select "All target types" and select "SOA Composite" from the target type list.
    3) Now hit "Rules" tab and then hot "Create" and then select first radio button - "Incoming events" since you wanna wrap SOA composite fault metric alert event into a rule.
    4) Now select "Type" and select "Metric Alert"
    5) Now since you are interested in a "specific event" - SOA composite fault metric alert event, select that radio button and hit "Add"
    6) From the "Target Type" dropdown, select "SOA Composite" target type and type "%Fault%" in the Metric name textbox and hit Search.
    7) Select you Metric name and select you severity as you wish.
    8) Add Actions - create notification, emails etc. (Refer docs to understand how best you can use these options as needed)
    9) Save your rule and save your Rule set.
    You have a rule (Make sure its enabled) that will execute your specified actions when any SOA Composite will breach your the selected metric (Fault metric in your case)

  • How to attach security policies to SOA composite References using WLST?

    Hi SOA Experts,
    Can any one send me wlst commands to attach security policies to SOA Composite references ?

    Hi,
    The WLST function for attaching an already available policy to a composite 'endpoint' is documented there :
    http://docs.oracle.com/cd/E25178_01/web.1111/e13813/custom_webservices.htm#autoId53
    You can either target the exposed interface or a reference.
    For exemple, when I want to attach a policy to a SOA Composite I use these parameters :
    attachWebServicePolicy('None',<partitionName>+'/'+<compositeName>+'['+<revisionNumber>+']',"soa",<serviceName>,<portName>,<policyName>)
    regards,
    mathieu

  • How to Assigned smartform in CRM

    Dear Friends,
    Please guide me  how to assigned smartforms (Order conformation) with driver program in CRM,
    Santhi

    Hi Shanti
    You need to define action profile from CRM->Basic Functions->Actions->Actions in transactions->Change Actions and Conditions->Define Action Profiles and Actions (you can use profile ORDER_MESSAGES)
    and then define condition for your action profile from the path CRM->Basic Functions->Actions->Actions in transactions->Change Actions and Conditions->Define Conditions
    And then assign this action profile to your transaction type.
    regards
    M.

  • Will B2B Adapter in SOA Composite receives fault when validation fails ?

    Hi Guys,
    Can any one clarify the following questions on B2B ?
    1. Can B2B Adapter receive exception whenever validation fails on b2b console after data sent from SOA Composite? if not how can we implement fault to soa composite in case of fault in b2b console?
    2. How can SOA Composite having b2b adapter configured with send operation know about fault happened in b2b console due agreement fail or validation fails or configuration fails?
    3. How can we handle faults in case of inbound scenario?

    Exception is handled in oracle b2b.
    All the execeptions are sent to IP_IN_QUEUE( in case of AQ) and B2B_IN_QUEUE( in case of JMS) with the consumer as "b2berror".
    You can configure your B2B adapter to pull out the exception messages in your soa composite.

  • Unable to start em after deploying SOA composites

    Hi
    I have installed SOA 11.1.1.1.3 and cretaed the repositories. I have created a new domain soa_domain which supports SOA,Enterprise Manager,BAM.
    The first time I started the server, it started successfully and I was able to deploy two SOA composites and also test them successfully through the em console.
    Today I restarted my admin server and I find the following logs during startup:
    ####<Jan 6, 2011 10:07:47 AM GMT+05:30> <Warning> <J2EE> <INMUCHPC00278> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1294288667512> <BEA-160195> <The application version lifecycle event listener oracle.security.jps.wls.listeners.JpsAppVersionLifecycleListener is ignored because the application em is not versioned.>
    ####<Jan 6, 2011 10:07:58 AM GMT+05:30> <Warning> <HTTP> <INMUCHPC00278> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1294288678205> <BEA-101162> <User defined listener com.sun.faces.config.ConfigureListener failed: java.lang.NoSuchMethodError: org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar([Lorg/apache/xerces/xni/parser/XMLInputSource;)V.
    ####<Jan 6, 2011 10:07:58 AM GMT+05:30> <Error> <Deployer> <INMUCHPC00278> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1294288678441> <BEA-149231> <*Unable to set the activation state to true for the application 'em'.*
    weblogic.application.ModuleException:      at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1514)
         at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:486)
         at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
         at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
         at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
         at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
         at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
         at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:1267)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:409)
         at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
         at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
         at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:184)
         at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:361)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:51)
         at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:200)
         at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
         at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:180)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:96)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    *Caused By: java.lang.NoSuchMethodError: org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar([Lorg/apache/xerces/xni/parser/XMLInputSource;)V*
         at org.apache.xerces.jaxp.validation.XMLSchemaFactory.newSchema(Unknown Source)
         at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:594)
         at com.sun.faces.config.DbfFactory.initSchema(DbfFactory.java:151)
         at com.sun.faces.config.DbfFactory.<clinit>(DbfFactory.java:120)
         at com.sun.faces.config.ConfigManager$ParseTask.<init>(ConfigManager.java:372)
         at com.sun.faces.config.ConfigManager.getConfigDocuments(ConfigManager.java:280)
         at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:202)
         at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:195)
         at weblogic.servlet.internal.EventsManager$FireContextListenerAction.run(EventsManager.java:481)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.EventsManager.notifyContextCreatedEvent(EventsManager.java:181)
         at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1863)
         at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3126)
         at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1512)
         at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:486)
         at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
         at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
         at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
         at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
         at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
         at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:1267)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:41)
         at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:409)
         at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
         at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
         at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:184)
         at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:361)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:51)
         at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:200)
         at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
         at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:180)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:96)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    And when I check the Admin console,Deployments section, the em application status is shown as failed. I tried starting it up from the Admin Console as well.
    But no luck....
    Has some one come across this before? Could you please help me figuring out the cause of this problem and how to overcome this?
    Regards
    Kshama

    When I mentioned I have deployed DBAdapter and JMSAdapter, I meant that, I added new outbound connection pools to the configuration and redeployed the adapters.
    Also, I compared the Admin Server logs( before and after redeploying Adapters), I found that there was a difference in java classpath it was referring to.
    After deployment of adapters, when I restarted the server, the classpath was referring to my classpath environment variable also which had an entry pointing to ant-1.6/xercesImpl.jar.
    I removed the entry from environment variable classpath.
    I have now reverted back the deployment order as before and everything seems to be working fine.
    Thanks All for your instant replies.
    Regards
    Kshama
    Edited by: Kshama Tamhankar on Jan 6, 2011 9:36 PM

  • How do you use a SOA Composite after you have deployed it and tested it?

    I have created a SOA Composite application, deployed it with no problems, and tested and it works. However I am having trouble finding info on what to do next. I really would like to know how to use this SOA Composite application in a web application. I am trying to create an interface that would use the SOA composite. Any links to help would be greatly appreciated.
    This is the only help I have found so far, http://docs.oracle.com/cd/E28271_01/fusionapps.1111/e15524/uc_bpel_bc.htm

    Hi,
    It's a web service call, you go to EM get the WSDL and with it you generate the webservice client for your web application... By calling the web service you will be starting the composite...
    Cheers,
    Vlad

  • How to maintain Strict Ordering of messages using SOA Suite where AQ is used for persistence.

    The requirement is this -
    Source DB -> Poller DB Adapter-> BPEL -> AQ -> DEQUEUE -> Target System
    Messages are DEQUEUED from an AQ (second part above - AQ -> DEQUEUE -> Target System) . The messages in this AQ are to be sent strictly in order to the Target system. In case there is an error during this processing of messages from the AQ to the Target system. The process should HALT and the message must be rolledback. Put in other words - the interface should stop . There must be no message loss in any circumstances. There should not be any further dequeue of messages or there should be no more instances created due to this. Only when someone has seen this error / error message  and acted on this error message/error shall this processing get started. Any idea how do we achieve this using SOA Suite 11g? Hope I have been able to explain well about the problem.
    Environment -  has two soa managed servers on weblogic (clustered).
    Please suggest ways to achieve this scenario. This is very crucial and needs implementation within 2 days of time.

    Hi,
    You can use Mediator Resequencing if looking for a standard solution. Else introduce Timestamp while pushing messages in AQ and sort them by Timestamp during processing - not a neat solution though.
    Regards,
    Neeraj Sehgal

  • Boot order of the SOA composites

    Hi
    Do we have any option to define the boot order of the SOA composites, during a server recycle.?
    We are having issues in server during recycle. The dependent services are not brought up first, hence call to such not brought up services are failing.
    The caller services are configured with MDS artifacts of the callee services, hence they can be brought up, even if the dependent services are not active.
    Please suggest, if you have any options.

    Hi,
    Do you use 11g? In that case the best thing to do is to put the abstract version of all the services into the MDS.
    Than base all the ui-wsdl references and all the wsdl-imports on the reference to the abstract wsdl in the mds (eg. replace all the wsdl-references with an oramds:/apps/... reference to the path in the mds).
    In service references in the composite you should keep the ws.binding attributes (location and port) referencing the concrete (deployed) values. These are used on runtime.
    If you do so (which is I think best practice), then there is no dependency at startup, so the chronology of starting up does not matter. At startup time it will use the abstract (ui) versions of the wsdl's. Only on runtime the concrete ones. See for instance: http://www.albinsblog.com/2011/11/oracle-soa-suite-10g-to-11g-migration_06.html.
    If you use SOASuite 10g, you could do about the same. But then you should put all the wsdl's in a subfolder in the htdocs folder of the apache server. Then in the bpel.xml you there are the wsdlLocation and the wsdlRuntimeLocation properties for the designtime (abstract) and the runtime version (concrete) of the wsdl.
    Regards,
    Martien

  • How to automate SOA Composite Unit Tests?

    Is there documentation on how to execute SOA Composite Unit Tests programmatically rather than through the EM UI?
    This is necessary for the Composite Unit Tests feature to be relevant to continuous build and integration methodology.
    Thanks,
    Todd

    The Fusion Order Demo sample has some automation for deploying and creating resources (see the readme). The book that is the Tutorial for building this sample does not talk about the automation, however. I'll see what other material we have.
    Heidi.

  • SOA Composites in Parallel - How to Configure and Monitor

    We have couple of SOA Composites that customers are making calls to. How can I configure these composites / Web Service that can be handled parallely.
    Customer is calling each composite 10/20 times (because of the load) in every 10 seconds and based on their testing it is queuing up and performance is slow. But when I look at CUBE_INSTANCE table for start and end of composite instances, it is doing good.. with in 1 second.
    I am guessing I need to configure to handle parallel calls to these SOA Composites.
    Any clue or help

    Hi,
    It depends on what you have in that composite? For BPEL you should go through this...
    http://docs.oracle.com/cd/E23943_01/core.1111/e10108/bpel.htm#BABGBFII
    The master document is this...
    http://docs.oracle.com/cd/E23943_01/core.1111/e10108/part_soa.htm#ASPER99595
    Cheers,
    Vlad

  • How to delete SOA composite from OIM 11g

    Hello,
    I modified an exisiting SOA composite and deployed it as a new version. Now I have 2 versions of the same composite available in OIM. I then went and undeployed the original (version 1) from the EM interface. I also deleted it from the deployed-composites and WLuser folder.
    Even after restarting the OIM/SOA servers, I can see the old version available in OIM. (Even though it's not deployed in SOA)
    How do I get rid of it completely? In Ch 21 of the OIM documentation, there are instruction to disable a composite. Is that the only option?
    Thanks!

    Probably. Does disabling=deleting in OIM?
    I was expecting it not to show up if the composite is not deployed on my SOA server...but it still is available. So looks like there is no real-time check (or check at any time, even at restart) of deployed composites between OIM and SOA. I could potentially have many undeployed composites still show up in OIM, assign them to templates etc. even if they don't exist anymore in SOA.

  • How to assign/unassign a finance document in sales order

    Dear experts,
    At billing tab at line item in sales order, a finance document (a letter of credit in this case) can be assigned. I would like to know
    1. how to assign and unassign it
    2. is it possible to "deactivate a letter of credit" meaning that the letter of credit (already created) cannot be assigned to SD documents.
    The field "Financ.doc.no." in VA02 is disable, so it cannot be changed.
    Your suggestion would be appreciated.

    Hi,
    1. how to assign and unassign it
    If you have created a financial document in the transaction Vx11N, then you can assign that to the sales document item or to the header using that field in the billing tab. You need to have the "Paym.guar.proc." field fill before doing that.
    To un-assign it, you can simple remove the value from that field, before you create a delivery / billing for that sales order line item.
    2. is it possible to "deactivate a letter of credit" meaning that the letter of credit (already created) cannot be assigned to SD documents.
    Yes, in the Financial document type configuration you have a configuration option to setup validity periods. During LC document creation using transaction VX11N, you can give a validity period. Based on the validity dates system will issue an error message, if you try to assign an expired LC.
    If you want to see how this should be configured, check below link;
    [LC|http://www.learnsaptips.com/2011/09/how-to-handle-letter-of-credit-in-sap.html]
    Best regards,
    Anupa

  • How to assign version in sales order and transfer to PP module

    Hi all
    Users say that customer will require to produce/deliver old goods (we active revision level. The newest material version is D. But customer want version B). How to assign version in sales order and let PP user know the version customer want (MRP run and production order must use version B's BOM)?
    Regards,
    Rita

    Hi,
    i have a query if you have implimented ECM this will serve the purpose but it also depends on how good the planning is, in ur client site ( out of SAP ) where planner will plan according to the customer requirement as to which version to be kept active for a date range.The ECO analysts(functional) or consultants will make the ECO changes for those dates.
    In general for those type of customers (who needs old version) a different SO created under different document type which will create a production orders with specific order type depending on the assignment of requirement type and requirement class.
    those specific production ordertypes can be inturn assigned to either different plant where your old version BOM's will be active.
    You need to look into the custom settings in SAP to design the larchitecture to allign with other requirements.What i explained u is common methodology used.
    Hope this is clear..
    Prakash
    Message was edited by:
            prakash Uddagatti

Maybe you are looking for