ALSB 3.0 split join error: sch-props-correct.2: Duplicate global type

Hi all,
I take 'Invoke Service' node to call external service. i'll select the operation required. that time i'm getting the following error:
"error: sch-props-correct.2: Duplicate global type: GetStateListRequestType@http://www.abcd.com (Original global type found in file: null)" during type system creation prior to validation led to incomplete validation.
Is it a bug? any patch is available for this?
Can anybody help if one has an idea on this?
Thanks in advance,
Ganesh
Edited by ganeshgadi at 05/28/2008 6:24 AM
Edited by ganeshgadi at 05/28/2008 6:25 AM

Sounds like a Workshop bug which I have seen before.
A couple questions to pinpoint it:
1. Are you use using either a BARE service (no operation name in the reqeust) or 2. are you using imports in your wsdl?
If 2 then I think there is a patch.
If 1, then like me, you may be out of luck.

Similar Messages

  • Servicebus: error: sch-props-correct.2: Duplicate global type

    I have a problem creating Split Join on ALSB 3.0. The problem is that the the request message schema of Split join service contains the same type(element) that is defined in request message schema of service that I want to invoke in split join flow.
    It seems that it's inpossible to invoke a service that contains one ore more types that are already defined in request schema of split-join flow. When I build the flow following error comes up:
    "servicebus:/XMLSchema/project/Schemas/types/common/Person error: sch-props-correct.2: Duplicate global type: Person@http://company.com/common/person (Original global type found in file: null)" during type system creation prior to validation led to incomplete validation     project/SplitJoins     SplitJoin.flow     line 1     1208930966845     2118
    So I can't deploy the flow. Is there any workaround? Is this normal or is it a bug?
    Thanks.

    Sounds like a Workshop bug which I have seen before.
    A couple questions to pinpoint it:
    1. Are you use using either a BARE service (no operation name in the reqeust) or 2. are you using imports in your wsdl?
    If 2 then I think there is a patch.
    If 1, then like me, you may be out of luck.

  • ALSB 3.0- SPLIT-JOIN

    Hi All,
    I have tried to create a split-join flow. I have selected an operation from a wsdl whch has soap header included in the binding. I got an error like "Binding contains operations with soap headers which is not supported". Could you please let me know how can I pass header to the split join flow.
    Thanks
    Roshni

    Hi!
    I´m Facing the same message Error, did you find the way to send the credentials trhough the Split Join?
    Thanx in Advanced!
    Kind Regards,
    Gerardo J

  • Error in Split-Join when invoke similliar B.Service with same namespace

    Hi Guys,
    I having a split-join that doing parallel spliting call out to business service. And i encounter this error.
    Severity and Description Path Resource Location Creation Time Id
    Error compiling the Schema Type System: error: sch-props-correct.2: Duplicate global type: GetabcParam@http://www.xx.xx.abc (Original global type found in file: null) SplitJoin.flow line 1 1265267604208 5245
    Can I know is this a limitation of the OSB or is a Bug? Or there is a more better way to implement this?
    Edited by: kpchong on Feb 4, 2010 7:51 AM

    I'm not sure if this is a known limitation or a bug. I faced this issue once, but needed quick fix so I didn't contact Oracle support at all.
    I remember that the problem emerged in case I had a SplitJoin with Parallel action and both branches used WSDL-based business services whose WSDL files imported the same (shared) XSD file. As I wrote before I needed quick fix, so I ended with re-adjusted namespaces just to overcome this issue. Ugly but effective.

  • Exception while executing split join in ALSB

    Hi
    When i am executing splitjoin flow in ALSB i am getting below exception
    ####<Nov 29, 2010 5:02:17 AM EST> <Error> <BPEL Kernel> <gifsmrt> <AdminServer> <[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1291024937262> <BEA-2032000> *<Error during invocation of "MICAPI/Proxy Services/SplitJoin" for event "CPS_IWGIF_Proxy@GetContractFinance" of type "com.bea.bpel.internal.dispatcher.message.ServiceResponseMessageExchangeImpl".*
    *com.bea.bpel.interpreter.exception.MissingReplyException: The message for partner link 'SplitJoin', operation 'GetContractFinance' and message exchange token 'null' has not been replied to.: Fault [{http://docs.oasis-open.org/wsbpel/2.0/process/executable}missingReply] The message for partner link 'SplitJoin', operation 'GetContractFinance' and message exchange token 'null' has not been replied to.*Executing Process Reference: MICAPI/Proxy Services/SplitJoin; instance ID: uuid:11d1def534ea1be0:-5e2ac50e:12b0eb1ffb4:-7b00; thread: Thread 26 (RUNNING); frame ID: null; location: null
    at com.bea.bpel.interpreter.internal.InterpreterFactory$ReplyEventListener.onTerminate(InterpreterFactory.java:84)
    at com.bea.bpel.interpreter.internal.state.StateContainerImpl.terminate(StateContainerImpl.java:131)
    at com.bea.bpel.interpreter.internal.program.StackFrameImpl.delete(StackFrameImpl.java:558)
    at com.bea.bpel.interpreter.internal.program.StackFrameImpl.delete(StackFrameImpl.java:572)
    at com.bea.bpel.interpreter.internal.program.StackFrameImpl.terminate(StackFrameImpl.java:535)
    at com.bea.bpel.interpreter.internal.program.ExecutionThreadImpl.pop(ExecutionThreadImpl.java:79)
    at com.bea.bpel.interpreter.internal.program.ProgramImpl.pop(ProgramImpl.java:395)
    at com.bea.bpel.interpreter.internal.operation.transition.FaultTransition.raise(FaultTransition.java:220)
    at com.bea.bpel.interpreter.internal.operation.transition.FaultTransition.execute(FaultTransition.java:85)
    at com.bea.bpel.interpreter.internal.Interpreter.postProcess(Interpreter.java:224)
    at com.bea.bpel.interpreter.internal.Interpreter.interpret(Interpreter.java:169)
    at com.bea.bpel.interpreter.internal.Interpreter.invoke(Interpreter.java:82)
    at com.bea.bpel.internal.dispatcher.EngineManagerImpl.dispatch(EngineManagerImpl.java:55)
    at com.bea.bpel.internal.dispatcher.SchedulerServiceContextImpl.fireEventMessage(SchedulerServiceContextImpl.java:184)
    at com.bea.bpel.internal.dispatcher.SchedulerServiceContextImpl.fireEvent(SchedulerServiceContextImpl.java:67)
    at com.bea.alsb.flow.scheduler.SchedulerServiceImpl$1.run(SchedulerServiceImpl.java:35)
    at weblogic.work.ContextWrap.run(ContextWrap.java:41)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:464)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
    and fault message as
    <con1:faultcode xmlns:exec="http://docs.oasis-open.org/wsbpel/2.0/process/executable">exec:missingReply</con1:faultcode>
    <con1:faultstring>The message for partner link 'SplitJoin', operation 'GetContractFinance' and message exchange token 'null' has not been replied to.</con1:faultstring>
    Can someone let me know what might went wrong in my flow?

    mmm as far as I remember it's available only in 3.0, not in 2.6
    http://download.oracle.com/docs/cd/E11036_01/alsb30/userguide/splitjoin.html
    and see also the excellent Biemond blog http://biemond.blogspot.com/2008/11/split-join-in-oracle-service-bus.html

  • Unexpected error compiling the runtime metadata for Split-Join.

    Hi Everyone,
    We are getting below error while restarting the managed servers on Weblogic. We are having 6 managed servers in our cluster. In one of the application in OSB10.3, we are using SplitJoin to call third party webservices. The application is getting deployed properly, and sometimes on one of the managed nodes, we are seeing below error during startup. The servers are coming into Running mode as per the console, but in logs we are seeing the error. No services are accessible on that particular managed node. We have to restart the server and by luck, it will come up properly. This is inconsistent behaviour from the managed servers. Below is the stack trace from stdout files. Any help would be greatly appreciated...
    <Jan 24, 2012 5:49:34 PM CST> <Error> <OSB FLOW Kernel> <BEA-2031003> <Split-Join deployment error during load notification: Unexpected error compiling the runtime metadata for Split-Join: "FISRecXferInqServiceV2_0/SplitJoin/RecXferInqSJ".
    com.bea.bpel.compiler.CompilerException: Unexpected error compiling the runtime metadata for Split-Join: "FISRecXferInqServiceV2_0/SplitJoin/RecXferInqSJ".
    com.bea.bpel.compiler.CompilerException: Unexpected error compiling the runtime metadata for Split-Join: "FISRecXferInqServiceV2_0/SplitJoin/RecXferInqSJ".
         at com.bea.alsb.flow.compiler.ProcessMetaDataFactory.create(ProcessMetaDataFactory.java:99)
         at com.bea.alsb.flow.resources.ResourceDeployer.deploy(ResourceDeployer.java:104)
         at com.bea.alsb.flow.resources.ResourceDeployer.access$100(ResourceDeployer.java:64)
         at com.bea.alsb.flow.resources.ResourceDeployer$LoadListener.onLoad(ResourceDeployer.java:545)
         at com.bea.wli.config.impl.ResourceListenerNotifier.sendLoadNotificationsInContext(ResourceListenerNotifier.java:239)
         Truncated. see log file for complete stacktrace
    >
    <Jan 24, 2012 5:49:34 PM CST> <Error> <ConfigFwk> <BEA-000000> <Failed in onLoad. Will not deliver the remainder of onLoad notifications to this listener.
    java.lang.RuntimeException: Unexpected error compiling the runtime metadata for Split-Join: "FISRecXferInqServiceV2_0/SplitJoin/RecXferInqSJ".
         at com.bea.alsb.flow.resources.ResourceDeployer$LoadListener.onLoad(ResourceDeployer.java:551)
         at com.bea.wli.config.impl.ResourceListenerNotifier.sendLoadNotificationsInContext(ResourceListenerNotifier.java:239)
         at com.bea.wli.config.impl.ResourceListenerNotifier.access$400(ResourceListenerNotifier.java:41)
         at com.bea.wli.config.impl.ResourceListenerNotifier$1.execute(ResourceListenerNotifier.java:152)
         at com.bea.wli.config.transaction.TransactionalTask._doExecute(TransactionalTask.java:217)
         Truncated. see log file for complete stacktrace
    com.bea.bpel.compiler.CompilerException: Unexpected error compiling the runtime metadata for Split-Join: "FISRecXferInqServiceV2_0/SplitJoin/RecXferInqSJ".
         at com.bea.alsb.flow.compiler.ProcessMetaDataFactory.create(ProcessMetaDataFactory.java:99)
         at com.bea.alsb.flow.resources.ResourceDeployer.deploy(ResourceDeployer.java:104)
         at com.bea.alsb.flow.resources.ResourceDeployer.access$100(ResourceDeployer.java:64)
         at com.bea.alsb.flow.resources.ResourceDeployer$LoadListener.onLoad(ResourceDeployer.java:545)
         at com.bea.wli.config.impl.ResourceListenerNotifier.sendLoadNotificationsInContext(ResourceListenerNotifier.java:239)
         Truncated. see log file for complete stacktrace

    Most 8.1 development was done with Workshop (the version before Eclipse integration). It is not set up to do Workshop Framework builds with Eclipse OOTB.
    If you are going to use Eclipse, then I would guess that your builds would be best done using Ant or similar. Check out the wls web service samples that install with the product and see if you can use any of those as a basis for using ANT in Eclipse.
    This is only theory, as I have not worked extensively with 8.1.

  • Propagating Error from Split join to Calling Proxy Service

    Hi All,
    In our project we are calling a split join service, from a Proxy Service, which in turn calls another Proxy Service.
    i.e:
    Proxy Service1 (PS1) <-> SplitJoin Service (SjS) <-> Proxy Service2 (PS2)
    Requirement:
    All the service calls are two way service calls and local protocol is being used. When an error occurs in PS2 we need to propagate the error with detailed error details to the PS1 via the SjS in order to achieve the following
    1. Achieving rollback of the Transaction
    2. Logging the detailed error report of PS2 in PS1
    Issue:
    But we are not getting the detailed error in the PS1. On further analysis we found dat the fault variable in the split join is empty in its error handling flow.
    We have used reply with error activity in PS2 to propagate the fault to the split join and reply with soap fault option in split join to propagate the fault to the PS1.
    We need to propagate the detailed report as error only, in order to achieve the rollback. So kindly suggest me the ways to get the detailed error report in PS1? i.e: getting the detailed error report of PS2 in split join fault variable and propagating the same to PS1.
    Regards,
    Balaji R

    Balaji,
    Try to enable Execution and Message(Terse Level) Tracing for the OSB services to see where fault message is going
    and
    In PS2 try with Reply with Success.
    as Reply with failure returns the fault variable back and Reply with success will send the content of (PS2)$body back as a response and then u can capture the fault from faulted body and send it to PS1.
    Regards,
    Abhinav Gupta
    Edited by: Abhinav on Aug 28, 2012 3:06 PM

  • How can I Route to two proxies or business services with out split join

    Hi,
    How are you?
    I´m trying to use a proxy to invoke 2 other proxiers or more at the same time but when trying to build a Split Join is giving an Error about the Security that is in the WSDL which is WSSecurity, so far I think that SPlit Join can´t handle this and is a must right now so I´m trying to figure out how to Route a Message to two proxies or business services doesn´t matter if it is in a secuencial way.
    Hope somebody knows what to do.
    Kind Regards,
    Gerardo J

    Hi!
    Thanx for the response, That´s the way I´m implementing it at this moment and is working fine.
    Thanx in Advanced!
    Kind Regards,
    Gerardo J

  • Oracle Service Bus 10.3 - split join how to set header for invoked service

    In Oracle Service Bus 10.3 how can I set the header for the service being invoked. We make parallel calls to 2 different business services. One of the invoked service requires header to be set and I am unable to figure out how it can be done. Below are snippet of the code and WSDL.
    --- Login Operation start ---
    <operation name="login">
    <wsdlsoap:operation soapAction="blah"/>
    <input name="loginRequest">
    <wsdlsoap:body use="literal"/>
    <wsdlsoap:header message="passport:loginHeader" part="hppwsHeaderElement" use="literal"/>
    </input>
    <output name="loginResponse">
    <wsdlsoap:body use="literal"/>
    </output>
    <fault name="genericFaultException">
    <wsdlsoap:fault name="genericFaultException" use="literal"/>
    </fault>
    </operation>
    --- Login Operation end ---
    --- hppwsHeader Element --
    <complexType name="hppwsHeaderElement">
    <sequence>
    <element maxOccurs="1" minOccurs="0" name="version" type="tns1:version"/>
    <element maxOccurs="1" minOccurs="0" name="tx-id" type="tns1:tx-id"/>
    <element maxOccurs="1" minOccurs="1" name="systemLangCode" type="xsd:string"/>
    </sequence>
    </complexType>
    --- LoginRequest Element ---
    <xs:element name="loginRequestElement" type="s0:loginRequestType"/>
    <xs:complexType name="loginRequestType">
    <xs:sequence>
    <xs:element name="userId" minOccurs="1" maxOccurs="1" type="xs:string"/>
    <xs:element name="password" minOccurs="1" maxOccurs="1" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    --- LoginResponse Element ---
    <xs:element name="loginResponseElement" type="s0:loginResultType"/>
    <xs:complexType name="loginResultType">
    <xs:sequence>
    <xs:element name="sessionToken" minOccurs="1" maxOccurs="1" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    In Oracle Workshop for WebLogic when I create a split-join .flow file while adding the invoke service call to login operation I am prompted to create the loginRequest and loginResponse variables. I can assign the appropriate expression to loginRequest.loginRequestElement prior to making the invoke call but then the backend business call fails because "systemLangCode" is not defined and set. Actual fault is
    <ns1:genericFault xmlns:ns1="http://hppcbl.globalops.company.com/webservice">
    <systemLangCode>en</systemLangCode>
    <fault>
    <ruleNumber>589</ruleNumber>
    <fieldName>systemLangCode</fieldName>
    <code>field.empty</code>
    <desc>System language code is required.</desc>
    <ftype>2</ftype>
    </fault>
    </ns1:genericFault>
    I would really appreciate if someone could guide me on how to resolve this
    Regards,
    -Nilay

    There is this $header variable which you should populate before calling the BS. What is the type of BS? If it is WSDL BS , Any Soap BS then above solution will work. I assume that yours is WSDL based BS and setting $header should resolve this issue.
    AnyXML and Messaging type BS services requires that you create proper pay load (setting $header will not work).
    There is also other actions Set Transport Headers {outbound request/inbound response} which can be used to set transport related headers but not soap headers.
    Manoj

  • Calling two Business service using split join in osb

    Hi,
    While trying to call two business service using Split Join in osb i am getting selection failure message in Bpel em console. i am using invoke activity to invoke the BS and assign to assign the input. in the assign i am assigning *$request.payload/input* to input.payload . In the em console i am getting input like this
    receiveInput
    Jun 19, 2012 5:05:45 PM Received "process" call from partner "bpelprocess1_client"
    <payload>
    <inputVariable>
    <part name="payload">
    <client:process>xxxxx</client:process>
    </part>
    </inputVariable>
    Assign (pending)
    Jun 19, 2012 5:05:48 PM Error in evaluate <from> expression at line "65". The result is empty for the XPath expression : "/client:process/client:input".
    <payload>
    <client:process>xxxxxx</client:process>
    Jun 19, 2012 5:05:48 PM The following exception occurred while attempting to execute operation copy at line 63
    <payload>
    <bpelFault>
    <faultType>0</faultType>
    <selectionFailure/>
    </bpelFault>
    Jun 19, 2012 5:05:57 PM "BPELFault" has not been caught by a catch block.
    Jun 19, 2012 5:06:00 PM The transaction was rolled back. The work performed for bpel instance "650002" was rolled back, but the audit trail has been saved for this instance.If this is a sync request, please resubmit the request from the client. If it is an async request, please recover from the recovery console by resubmitting the invoke message.
    Can anyone help on this?
    Thanks in Advance...

    maybe this one helps a bit, it's the same pattern
    http://www.xenta.nl/blog/2011/07/03/oracle-service-bus-implementing-aggregator-pattern-by-use-of-split-join/
    if you're using a dynamic split join easiest way is to do something like
    assing <yourresponse/> to $response
    at this moment your assign an empty placeholder to the response variable
    now you go into the for-each looping and for each iteration you need to insert the response of your bpel call in the $response variable
    so in the looping as last step you add something like
    insert $mybpelresponse/rootelement into $response/yourresponse
    with the insert it will insert the reponse 1..x times into the $response variable (so actually aggregating all the responses for you)

  • Invoke secured service through Split-Join

    Hello,
    I create a new Split-Join (in the OSB workshop application). Then
    I use an action "Invoke Service" to call a not secured business service. So far no problem. When I assign a security policy to my business service, the OSB does not accept. Here is the error message in the OSB workshop:
    [Parallel, Scope, Invoke Service]
    The WSDL Binding for BusinessService "OSB/1_0/BusinessServices/TestBS" is not supported: The service feature "WS-Security" is not supported.
    How can I call a secured business service in a splitJoin?
    Thanks

    Well, another way is a custom WSDL.
    The problem, I believe, is not the PS or BS by themselves, but the WSDL Split-Join "sees" from them. So, if you make a version of the same WSDL with no offending policies and supply it to Split-Join, it should work. I suspect you'd still have to build the intermediate PS with that stripped WSDL though.
    In fact, forget about PS. Strip the policy from WSDL and add them to the BS from a policy resource. I would believe Split-Join in this case will not see the policies, while BS would use the ones configured for it.
    Vlad
    http://vladimirdyuzhev.com

  • Problem with variable inside split-join

    Hello,
    I'm using Oracle BOM Suite 10.3.0.0 and i want to use the split gateway.
    In general the split activity ends with a join.
    the problem is when i affect a value to a variable between the split and join, it could not get this value after the join, which means after the join the variable becomes empty just like it was before the split.
    could anyone help me please.
    thanks

    HI
    Case 1: Instance variables are not shared:
    At join you can copy the variables from one of the branches to the main instance (that waits at join).
    this.instanceVar = copy.instanceVar
    This will copy the value of variable 'instanceVar' from the instance that just arrived at join to the instance that was waiting at join (main instance)
    Case 2: Instance variables are shared:
    This would mean that the main instance shares its variables with the child instances (instances between split - join). In such a case, when a variable is updated by any of the branches, the change is reflect in all the copies.
    You can set the property to share or not to share instance variables, in the advanced properties of the split activity.
    HTH
    SAtinder

  • Split-Join, unable to set SOAP:HEADER in OSB at Invoke Service Component.

    Hi Experts,
        i created a Split-join for parallel processing and invoke third party services, but this service requires some mandatory elements in soap:header like WS-Addressing and, WSA-TO and some security infomation, but i don't know  how to pass header in invoke service step. Please help me to setup Header for Invoke services in split join.
    Please help me to resolve this issue.
    Thanks
    Ankit

    see this :https://forums.oracle.com/thread/951618
    not the most fancy way, but you can create some sort of  wrapper proxyservice in front of your business service to make it work

  • For each sample example  in OSB without Split join

    Hi,
    Any body have sample example for For each in OSB without Split join......Thanks in advance

    I know this is an old thread, but I just ran into this same problem. Wow! That's a crappy 'feature'. I wasted 4 hours this morning on this thinking it was me doing something wrong in my xpath, but nope, you need to cast the counter to an int .......
    I hope they fix things like this in the next major release.
    Thanks for the solution.

  • Grab in split-join

    I have a grab activity which is set to from all to all. The process has a split-join. The user cannot grab an activity which is in a branch of split-join to outside the split-join or grab an acitivity which is outside the split-join into one branch of split-join. If I want to grab an activity of a branch to outside split-join, I can abort all activities in all branches and the process goes to join. Or I can grab all acitivities in all branches to the final activity before join and execute them to join. Is there any other method to grab from activity which is inside split-join to outside the gateway?

    Hi,
    Thanks for your reply. I create a new grab activity and set it to grab from all to all.
    In a new instance, if the process is inside the split-join, the new grab activity is the same as the first one. It is shows that the instance in a branch can be grabbed within the split-join.
    If the instance is outside the split-join, the grab activity cannot grab the instance to the branch.
    For example, the split-join has 2 branches. Each has 3 activities, named as
    branch 1: a1, a2, a3;
    branch 2: b1, b2, b3.
    Before the split, there are 2 activities named as c1, c2. After the join, 2 activities named c3, c4.
    C1 cannot be grabbed to b2. b2 cannot be grabbed to c4.

Maybe you are looking for