ABCS using Service Constructor

How important it is to following the general AIA custom extension standards to extend a custom developed ABCS process using the service constructor?
My understanding is Oracle follows the AIA custom extension standards to keep the out of the box PIP code upgrade/patch free.. When we are developing our own ABCS processes using the service constructor, there is an option to add the extensions to the custom ABCS processes, does this add any value?, my personal feeling is that this is going to increase the complexity of the custom code..
Please share your experiences...
Thanks,
Sid

Hi,
We have come to the same conclusion. We will not need to add extension points to ABCS as we would simply redevelop and deploy a new version.
I also don’t think extension points are required for long running EBF’s as we can deploy multiple versions. The only problem that could occur is if we wanted already running processes to change their behaviour, but as we do not have any long running process as yet we haven’t considered this.
Not implementing extension points effects how we use the PIPAuditor. All our ABCS’s fail the extension point tests. I think I will need to look into removing these tests from out PIPAuditor.
Robert

Similar Messages

  • Create Requester ABCS without Reference using Service Constructor

    Hello,
    we using Service Constructor to create Requester ABCS. We disable the checkbox for CAVS and References, but the WSDL of EBS is as reference in Project and binding didn't bind to oramds. Another point is, that we disable ErrorHandling, but in composite and bpel is an external reference to AIAAsyncErrorHandling.
    Here are some screenshots:
    [Default Target Service Options|http://dl.dropbox.com/u/4274798/AIA-EAP/ServiceConstructor/SC_TargetServiceOptions-Enable.png]
    [Disable Checkboxes|http://dl.dropbox.com/u/4274798/AIA-EAP/ServiceConstructor/SC_TargetServiceOptions-Disable.png]
    [Reopen after editing|http://dl.dropbox.com/u/4274798/AIA-EAP/ServiceConstructor/SC_TargetServiceOptions-AfterConfirm.png]
    [Disable Error Handling|http://dl.dropbox.com/u/4274798/AIA-EAP/ServiceConstructor/SC_AddErrorHandling.png]
    Is it a bug in service constructor or did we misunderstanding the checkboxes?
    Marcel

    Bug 9431667 is logged for issue where error handling was unchecked, but it is still being defined.

  • Unable to Create Requestor ABCS using AIA Constructor in Jdev 11.1.1.2

    Hi Gurus,
    I'm currently trying to create ABCS Requester with J developer 11.1.1.2 using the AIA Service Constructor.
    The Composite Application shows the BPEL Component and the target services under the Composite screen.When we click on the BPEL Component we dont the process flow.
    Steps Followed
    1. Create project in Project Lifecycle Workbench
    2.Using the AIA Service Constructor connect to the AIA_LIFECYCLE Workbench.
    3.Select the RequestorABCS Service
    4.Filled out all the ApplicationName,ShortName,Service Version etc on Step 3 of 8
    5. Selected the Service Operation as Query.
    6.Under ABM import the Custom XSD structure and provided the Input and output message
    7.Select the message pattern as request/response
    8.Target Service Step selected the Query Service (this would query the required Customer Content which needs to be mapped).
    9.The the AIA Service Constructor creates BPEL Composite Component.
    When we double and open the BPEL Component we just see the error handling and partner link information.
    We are unable see any assign,scope invoke component on the swim lanes..
    Has anyone experienced this issue while creating ABCS Requester.
    Regards
    Sabir

    Hi Everyone,
    I was able to create Requestor ABCS in Jdev 11.1.1.2 by selecting EBS,wsdl as target. This is workaround you need to follow to create requestor ABCS where you have V2 wsdl available.
    Looks like there is bug#9541128 assigned for this issue. And looks like it would be fixed in 11.1.1.4 version of Jdev as per Oracle Support.
    Regards
    Sabir

  • AIA SERVICE CONSTRUCTOR, CREATION OF REQUESTER AND PROVIDER ABCS

    While the creation of requester ABCS using service constructor we need to give the xsd location and all input fields,
    But in the creation of provider ABCS we have an extra field for selecting WSDL file, if we select the wsdl it'll automatically fills in the details for incoming EBM
    Just wondered why creation of requester ABCS doesn't need the wsdl, what is the conflict that doest allow the Requester ABCS to define its incoming ABM directly using wsdl.

    It's because a requestor will be exposed to be called for one or more applications and you need to define an interface for them.
    Provider will invoke a service from some application and will use the existant interface.

  • Generating Midway Receive Activity with Service Constructor in AIA 11g

    Hi all,
    We are trying to generate a midway receive activity in ABCS (to handle callback) using service constructor. However when I am using the callback option and selecting a target service it is generating an invoke activity only.However this thing worked with Artifact Generator in AIA 2.5 FP.
    Has anybody achieved this scenario of generating midway receive activity using service constructor?
    Thnks & Rgds,
    Mandrita

    Hi,
    Yes. You give it the abstract WSDL and operation for the callback.
    The service constructor merely provides a starting point and not a complete composite. You have to do a lot of ‘finishing’ off yourself.
    I should point out that we are now through our testing phase of our integration. Although midway receives in our ABCS’ do work they greatly increase the maintenance load on the system, the admins and support staff. If I were to re-work this I would have designed the ABCS’ to be transient and I would highly recommend you look at re-working the solution so that wherever possible every single BPEL you create is truly transient and short lived. (Have a look here http://blog.thisisahmed.com/2009/05/transient-vs-durable-bpel-processes.html)
    Where we had a requirement for a mid-way receive to send the response back to the correct place I would have instead used two one way integrations and program the target system to hold and re-transmit any data required by the return path.
    Robert

  • AIA FP 11g - Service Constructor Question

    Hi All,
    I am trying to create the Provider ABCS impl using the Service Constructor. I have defined the Solution Service Component in the AIA Project Lifecycle Workbench as BAERP Create Purchase Order List Ebiz Provider ABCS. The CreatePurchaseOrderList method of the PurchaseOrderEBS will invoke this ABCS with a list of Purchase Orders.
    To create the Service Contructor, these are the steps that I follow,
    1. Create New Project -> Business Tier -> AIA -> AIA Service Component Project
    2. Service Description: Select the Solution Service Component from the AIA Project Lifecycle Workbench
    3. Service Details: Product Code: Ebiz, Application Name: Ebiz, Application Id: EBIZ_01, Application Short Name: Ebiz, Service Operation: Create, Service Type: Provider ABCS ( Only relevant attributes are given)
    4. Service Object: WSDL: Select PurchaseOrderEBSV1.wsdl from EnterpriseBusinessServiceLibrary, Operations: CreatePurchaseOrderList
    5. Target Service Details: I am selecting the wsdl of a deployed composite, which inserts a list of Purchase Orders into a database, Operations: Process
    6. I click Finish - The ABCS as well as the BPEL process that gets created is CreatePurchaseOrderEbizProvABCSImpl, where as I was expecting it to be created as CreatePurchaseOrderListEbizProvABCSImpl.
    Did I miss something here, or should I be referring to the ABCS as CreatePurchaseOrderEbizProvABCSImpl?
    Regards,
    Anish.

    Hi,
    Check the Object Name field in Step 4 of Service Constructor. Ensure it is PurchaseOrderList, If it was jus PurchaseOrder you edit and append List to it.
    After Finish, your Prov ABCS will be named as CreatePurchaseOrderListEbizProvABCSImpl.
    Regards,
    Rahul

  • AIA 3.1 service constructor generates wrong AIAServiceConfigurationP file

    Hi
    When I use the service constructor to generate a ABCS with CAVS it generates a wrong AIAServiceConfigurationProperties.xml file.
    the AIAServiceConfiguration element is not included / generatad ,
    this has as result that the AIAConfigurationProperties.xml file does not contain this entry so the xsl for the ebm header crashes
    thanks

    Hi,
    Check the Object Name field in Step 4 of Service Constructor. Ensure it is PurchaseOrderList, If it was jus PurchaseOrder you edit and append List to it.
    After Finish, your Prov ABCS will be named as CreatePurchaseOrderListEbizProvABCSImpl.
    Regards,
    Rahul

  • How to connect the database (JDBC) using service name rather than SID

    How should we make the connection to the database using service name. Initially, we are using the SID to make the database connection, with following setting in the data-source.xml in OC4J using ABCDB as the SID.
    <data-sources>
         <data-source
              class="com.evermind.sql.DriverManagerDataSource"
              name="jdbc/ABCDB"
              location="jdbc/ABCDB"
              pooled-location="jdbc/OracleDSPooled"
              xa-location="jdbc/xa/OracleDSXA"
              connection-driver="oracle.jdbc.driver.OracleDriver"
              username="ABC"
              password="ABC"
              url="jdbc:oracle:thin:@191.1.4.126:1521:ABCDB"
         />
    </data-sources>
    It work, but now we need to make the connection using this service name ABCSERVICE, but it doesn't work in the OC4J (JDBC). May I know how should we handle this connection?
    Thanks and Regards,
    Pang

    Finally, I got the solution to make the database connection using service name, with putting the tnsname setting in URL portion.
    url="jdbc:oracle:thin:@(description=(address=(host=191.1.4.126)(protocol=tcp)(port=1521))(connect_data=(SERVICE_NAME = ABCSERVICE)))"
    And now, it is working fine.
    Regards,
    Pang

  • AIA Service Constructor hanging

    I am attempting to use the AIA Service Contructor extension for JDeveloper 11g but any attempt at going through the wizard does not finish. Anyone else seen something similar?

    Hi,
    Which version of SOA you are using?
    Can you please update the Service Constructor on your Jdev with the latest.
    Regards,
    Narayana

  • AIA 11g - Service Constructor

    Hi All,
    There are two ways to create the ABCSs using the Service Constructor. By logging into the AIA LCW, and by giving the input through a file. Can someone please provide details of the file that can be provided as input to the Service Constructor?
    Regards
    Anish.

    Use this sample input file for a simple Request Fire and Forget use case.
    <?xml version="1.0" encoding="UTF-8"?>
    <AIACodeGenerator>
         <GenerateOutputFiles>
              <GenerateBPELFileIndicator>true</GenerateBPELFileIndicator>
              <GenerateWSDLFileIndicator>true</GenerateWSDLFileIndicator>
              <GenerateExtensionWSDLFileIndicator>false</GenerateExtensionWSDLFileIndicator>
              <GenerateJdeveloperProjectFileIndicator>true</GenerateJdeveloperProjectFileIndicator>
              <GenerateCompositeFileIndicator>true</GenerateCompositeFileIndicator>
              <GenerateComponentFileIndicator>true</GenerateComponentFileIndicator>
              <GenerateMappingXSLFileIndicator>true</GenerateMappingXSLFileIndicator>
              <GenerateFaultPolicyFileIndicator>false</GenerateFaultPolicyFileIndicator>
              <GenerateConfigFileIndicator>true</GenerateConfigFileIndicator>
         </GenerateOutputFiles>
         <ABCSConfig>
              <ServiceSolutionComponentAssociation>
              <GUID></GUID>
              </ServiceSolutionComponentAssociation>
              <Description></Description>
              <ABCSType>Requestor</ABCSType>
              <Verb>Create</Verb>
              <Industry>Core</Industry>
              <ParticipatingAppShortName>Siebel</ParticipatingAppShortName>
              <ParticipatingAppLogicalName>SEBL_01</ParticipatingAppLogicalName>
              <ParticipatingAppLongName>Siebel</ParticipatingAppLongName>
              <ParticipatingAppDefaultID>SEBL_01</ParticipatingAppDefaultID>
              <ProductCode>SFA</ProductCode>
              <ABCSVersionNumber>1</ABCSVersionNumber>
              <EOLLocation></EOLLocation>
              <EOLMDSLocation>oramds:/apps/AIAMetaData</EOLMDSLocation>
              <GenerateErrorHandlingIndicator>true</GenerateErrorHandlingIndicator>
              <ErrorHandlingServiceRuntimeLocation>http://ap6014rems.us.oracle.com:8001/soa-infra/services/default/AIAAsyncErrorHandlingBPELProcess/client?WSDL</ErrorHandlingServiceRuntimeLocation>
              <ErrorHandlingServiceName>AIAAsyncErrorHandlingBPELProcess</ErrorHandlingServiceName>
              <ErrorHandlingPortName>AIAAsyncErrorHandlingBPELProcess</ErrorHandlingPortName>
              <EnableExtensionIndicator>false</EnableExtensionIndicator>
              <ExtensionWSDLRuntimeLocation></ExtensionWSDLRuntimeLocation>
              <ExtensionWSDLServiceName></ExtensionWSDLServiceName>
              <ExtensionWSDLPortName></ExtensionWSDLPortName>
              <GenerateTransactionProperties>true</GenerateTransactionProperties>
              <ABCSInterface>
                   <ServiceObjectName>Customer</ServiceObjectName>
                   <ServiceObjectVersion>1</ServiceObjectVersion>
                   <ServiceObjectNamespacePrefix>sbldata</ServiceObjectNamespacePrefix>
                   <ServiceObjectNamespace>http://www.siebel.com/xml/CMU%20AccSync%20Account%20Io</ServiceObjectNamespace>
                   <ServiceObjectSchemaLocation>oramds:/apps/AIAMetaData/AIAComponents/ApplicationObjectLibrary/SampleSEBL/schemas/CmuAccsyncAccountIo.xsd</ServiceObjectSchemaLocation>
                   <ServiceMEP>FireAndForget</ServiceMEP>
                   <InputMessageElement>ListOfCmuAccsyncAccountIo</InputMessageElement>
                   <DocumentationVersion>1</DocumentationVersion>
                   <SVCDoc>1.0</SVCDoc>
              </ABCSInterface>
              <TargetService>
                   <TargetServiceType>EBS</TargetServiceType>
                   <ScopeName>CustomerPartyEBS</ScopeName>
                   <EnableExtensionIndicator>false</EnableExtensionIndicator>
                   <EnableDynamicEndpointIndicator>true</EnableDynamicEndpointIndicator>
                   <GenerateScopeErrorHandlingIndicator>true</GenerateScopeErrorHandlingIndicator>
                   <ServiceObjectName>CreateCustomer</ServiceObjectName>
                   <ServiceObjectVersion>1</ServiceObjectVersion>
                   <ServiceObjectNamespacePrefix>corecustomerpartyebs</ServiceObjectNamespacePrefix>
                   <ServiceObjectNamespace>http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/CustomerParty/V2</ServiceObjectNamespace>
                   <ServiceObjectSchemaLocation>oramds:/apps/AIAMetaData/AIAComponents/EnterpriseObjectLibrary/Core/EBO/CustomerParty/V2/CustomerPartyEBM.xsd</ServiceObjectSchemaLocation>
                   <ServiceNamespacePrefix>ebs</ServiceNamespacePrefix>
                   <ServiceNamespace>http://xmlns.oracle.com/EnterpriseServices/Core/CustomerParty/V2</ServiceNamespace>
                   <ServiceWSDLLocation>oramds:/apps/AIAMetaData/AIAComponents/EnterpriseBusinessServiceLibrary/Core/EBO/CustomerParty/V2/CustomerPartyEBS.wsdl</ServiceWSDLLocation>
                   <TargetWSDLServiceName></TargetWSDLServiceName>
                   <TargetWSDLPortName></TargetWSDLPortName>
                   <ServiceEndpointLocation></ServiceEndpointLocation>
                   <CAVSEndpointLocation></CAVSEndpointLocation>
                   <ServiceMEP>FireAndForget</ServiceMEP>
                   <GenerateReferenceWSDLFileIndicator>true</GenerateReferenceWSDLFileIndicator>
                   <PortTypeName>CustomerPartyEBS</PortTypeName>
                   <Operation>CreateCustomerPartyList</Operation>
                   <InputMessage>CreateCustomerPartyListReqMsg</InputMessage>
                   <InputMessageElement>CreateCustomerPartyListEBM</InputMessageElement>
                   <DocumentationVersion/>
                   <SVCDoc/>
              </TargetService>
         </ABCSConfig>
    </AIACodeGenerator>

  • How can I use multiple constructor

    Hi,
    I have some problem to using multiple constructor in java. It shows some error while compiling the following program. can any one give better solution for me.......
    public class Test6{
       public Test6(){
    this(4);    /*
    C:\Test6.java:5: cannot find symbol
    symbol  : constructor Test6(int)
    location: class Test6
    this(4);
      Test6(byte var){
    System.out.println(var);
    public static void main(String[] args){
    Test6 t6 = new Test6();
    }

    A number like 4 is an integer literal. So, you are passing an int to a function that is defined to accept a byte, hence you have a type mismatch. You need to cast the integer literal to a byte before passing it to the function:
    this( (byte) 4);

  • I am unable to use services for objects  while creating a PO

    Hi All,
    I am unable to use services for objects  while creating a PO ie in me21n / Me22n .
    Our client wants to attach some doucument along with the PO, we want to use services for object for this. I use this services for objects in admin level , but unable to use this at user level. 
    System gives the following message
    No service available
    Message no. SGOS_MSG002
    Regards
    Gsg

    Hi,
    Refer the following OSS notes 552127, 598073
    For getting Object for services icon in ME21N and ME51N refer OSS note 913251

  • Issue while creating connection pool in weblogic using SERVICE NAME

    Found two issues while creating connection pool in weblogic using SERVICE NAME
    1. While running apps from jdeveloper using xxx-jdbc.xml
    weblogic.common.ResourceException: Could not create pool connection. The DBMS driver exception was: Io exception: The Network Adapter could not establish the connection
         at weblogic.jdbc.common.internal.ConnectionEnvFactory.createResource(ConnectionEnvFactory.java:253)
         at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1109)
         at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1033)
         at weblogic.common.resourcepool.ResourcePoolImpl.start(ResourcePoolImpl.java:214)
         at weblogic.jdbc.common.internal.ConnectionPool.doStart(ConnectionPool.java:1051)
    2. Configuriing the jndi in Weblogic server
    weblogic.common.ResourceException: Could not create pool connection. The DBMS driver exception was: Listener refused the connection with the following error:
    ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
    The Connection descriptor used by the client was:
    localhost:1521:SERVICENAME
         at weblogic.jdbc.common.internal.ConnectionEnvFactory.createResource(ConnectionEnvFactory.java:253)
         at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1109)
         at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1033)
    Problem
    database url is generated based on SID
    eg: jdbc:oracle:thin:@localhost:1521:SID
    Solution
    (generate seperate url for SERVICE NAME)
    jdbc:oracle:thin:@localhost:1521/SERVICENAME
    ------------------------

    It is so clear: host not found error for network connection and the other SID servcie name not found means your oracle instance name is not up. check with srvctl status for given servcie name or node, else check CRS_Stat -t if you are using RAC.

  • Using service Locator pattern to dynamically access remote EJBs

    Hi All,
    Please help to guide me how I can use a service locator to retrieve a remote object (residing on another application but on same domain) .
    I do not want to use Dependency Injection since I want to dynamically discover them ( there are many implementations of same interface (POJO)). Each EJB implementation implements its own remote/local interface that extends this global POJO interface.
    I have two J2ee-Applications on same domain. J2EE-Application 1 has an EJB module (EJB Module 1) that intends to access an EJB Module (EJB Module 2) in J2EE-Application 2. Following observations:
    1. Dependency Injection fails if (include the EJB Module 2 jar in J2EE-Application 1). Reason App Server complains the EJB has been deployed (Deployment fails)
    2. Dependency Injection works if (exclude the EJB Module 2 jar in J2EE-Application 1) and include the Remote Interface in EJB Module 1(J2EE-Application 1).Positive Observation (Deployment success and DI also success)
    3.Using Service Locator to retrieve the remote object if (exclude the EJB Module 2 jar in J2EE-Application 1) and include the Remote Interface in EJB Module 1(J2EE-Application 1). Negative and Positive Observation.
    Positive Observation: Using dependency injection I can still retrieve the Remote Object
    Another Positive: The Service Locator remote lookup to another Bean in same Application but different EJB Module is successful.
    Negative Observation:
    The Service Locator lookup to this same remote object with Successful Dependency Injection fails (An Ejb in a different application).
    Can't retrieve the Remote Object with Service Locator. Message from Server:.
    NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial.
    Thanks in advance

    "I do not want to use Dependency Injection since I want to dynamically discover them ( there are many implementations of same interface (POJO))"
    If you're calling ejbs from other ejbs or servlets, the same could probably be acomplished by using dependency injection (@EJB) in a number of instance variables typed with different remote/local interfaces or even with different beanName attributes (for when more than one bean implements the same managed interface in the same app - not sure how it works outside the same jee app...) , and dinamically selecting one of them; or encapsulating those injected variables into a stateless ejb as your service locator to make them accessible from POJOs too (which, due to concurrent acess, wouldn't work for statefull ejbs references...).
    Anyway, using the jndi lookup service locator pattern seems ok in this case.
    What doesn't seem ok, given the nature of the error for the negative observation - jndi context initialization - is that
    Another Positive: The Service Locator remote lookup to another Bean in same Application but different EJB Module is successful.
    Can you check your code and reconfirm that you're using the same context initialization code for both the positive and negative observations ?

  • Date Error on the Service Order while using service product

    Hi PM experts,
    I am working on the scenario resource-related billing, using service product in the service order created from a service notification linked to a contract with service product as the line item.  service product is the material of DIEN material type.
    when i was trying to save the service order created using transaction code-IW31, i am getting the  Error Message:
    " *SYS:Date 00.00.0000 not expected*".
    This error started only yesterday, and it was not there before. Basis team has confirmed that they have not done any new
    updates to the system.
    Had anyone encounered this problem before, if yes kindly let me know the solution and the steps to resolve it.
    thanks for the help.
    regards,
    rajaraman

    Hi,
    Here is the error description with message number,
    SYST: Date 00.00.0000 not expected.
    Message no. FGV004
    As an update to this thread, while searching for the reasons for the problem, i found that the characteristics used in the
    warranty class were carrying default date value as 00.00.0000.  can this be a reason for getting this error as the service
    product number which is a DIEN material type is linked to the master warranty which is in turn assigned to the equipment.
    Hope this information helps.
    regards,
    rajaraman

Maybe you are looking for

  • Functional Module:Need  some sample source code.

    Hi All, I have created  a customized table   u2018ZStock_Order_Dealeru2019 with the following fields: Stock_Order_Dealer Dealer Number S2D order Number      Line item Number      Material Number      Ordered Quantity      Batch Number      Received Q

  • Regarding ASM in Oracle 11g

    Hi I would like to use ASM storage for my single instance oracle 11gR2 database. I am a little bit confused so that asking some question about Oracle 11g ASM. 1. Does Grid Infrastructure mandatory for installation Oracle 11g  ASM instance? 2. Without

  • Is my Firewire 800 PCI card fried?

    A couple of days ago my G4 with Sonnet dual 1.8 Ghz processors woke up. There was an immediate warning on my screen in five languages that something bad had happened. I rebooted and all was OK, except my G-RAID 320 gig wouldn't mount. I had it connec

  • Wifi and future use of itouch

    I know nothing about wireless communication. With that said, since itouch has wifi capabilities, will this enable it (sometime in the future) to be able to connect to the internet "all the time"? For example, in the future (or maybe its avail. now) w

  • Sales order conditon price

    Hi experts, I have created a condition price with two field: customer and manufacturer. I have maintained this cond. in VK11. It's a item condition, Discount or surcharge,Percentage,Not possible to process manually. In our SAP system we have two type