JCAPS 5.1.1 Java Collaborations in eInsight Business Process

We currently use JCAPS version 5.1.1. We use Java Collaborations (jcd) services embedded on eInsight Business process(bp) to complete a business process.
Question:
Java Exception from a collaboration (jcd) is received by business process (bp) only if I have an output specified for that collaboration. Please let me know if this is a bug or a feature.

Consider that we have a JCD with input and output defined. When we drag this JCD service to eInsight business process canvas, bp creates 3 business attributes (ie 1-input, 2-output and 3-JavaException). We can use a named exception handler and use 3-JavaException attribute to handle exceptions from JCD Service.
Consider that we have a JCD with input (Like a One-Way service) defined. When we drag this JCD service to eInsight business process canvas, bp creates only 1 business attribute (ie 1- input). JCD service is capable of throwing an exception. How do we catch/handle this exception?
Thanks,
Siva

Similar Messages

  • Instantiating a eInsight business process through web application

    Hi all,
    Has anybody ever tried instantiating a eInsight business process involving user activities by clicking a link on a web application? All the tutorials I have seen so far are all based on input files. Could anybody please refer me to some sample where a eInsight process is started by clicking a link or rather interactively.
    Thanks & Regards,
    Sujoy

    An eInsight Business Process is instantated when a message for its initial Receive Activity becomes available for delivery. If you contrive to deliver a message to eInsight's BP from a Web Applicatin you will achieve the result you seek. The receive activity can be associated with a File eWay, a JMS Client end-point or any numer of other end points/adapters/connectors capable of receiving a message. You could, for example, use the JMS API Kit in a JSP in your web application to send a message to a JMS Receive activity that starts the BP. That presupposes that your web application is external to the Java CAPS solution. You could also build your web application using the eVision product, which is specifically designed to allow you to build Java CAPS-based web applications/composite applications. Have a look at eVision to see if you can use that to achieve what you need to achieve.

  • Handling  Faults in a Business process JCAPS 513

    Hi All,
    We are testing the faults in a WSDL file.
    Fault message has three fields viz Type/Message/Trace.
    When i invoke the webservice in a JCD , all the 3 fields are getting populated with the proper error description.
    But when i invoke the same service in a business process with a CatchAllExceptions handler, control goes to the exception block , But the fields are not getting populated , instead they are empty.
    Could any body please let me know , if we need to consider any extra stuff when we invoke a webservice in a Business process.
    By the way we are using JCPAS 5.1.3 for this.
    Regards
    Giri.

    Consider that we have a JCD with input and output defined. When we drag this JCD service to eInsight business process canvas, bp creates 3 business attributes (ie 1-input, 2-output and 3-JavaException). We can use a named exception handler and use 3-JavaException attribute to handle exceptions from JCD Service.
    Consider that we have a JCD with input (Like a One-Way service) defined. When we drag this JCD service to eInsight business process canvas, bp creates only 1 business attribute (ie 1- input). JCD service is capable of throwing an exception. How do we catch/handle this exception?
    Thanks,
    Siva

  • Web Service exposing Java Collaborations vs designing with eInsight

    Hello
    I have relatively little experience in designing and implementing web services. We are now looking at implementing some minor services with JCAPS.
    I would like to have some input on above subject. what are the pros and cons using either of the strategies. Today we do not use eInsight.
    I have understood that you do not have access to the SOAP message when exposing a java collaboration as a web service. I can also understand some of the drawbacks if you develop a ws consumer and you want to manipulate the SOAP message. But if you develop a server service implementation, when do you need access to the SOAP message?
    Other issues that might arise:
    Security
    Distributed transactions
    Any references to best practice resources, biased towards JCAPS would be highly appreciated.
    TIA

    Hi again
    We are also interested in in using attachments in the SOAP message. I have googled a bit and from what I have found it seams that it is "not supported out of the box"
    Can anyone enlighten me in this area?
    A general comment, I find it very hard to get information from the documentation of JCAPS, maybe I have missed something so please direct me to the right source if you find my ?? to much "newbie like". Things like, specification of packages, classes, methods, parameters with data types, Exceptions etc where can I find it in JCAPS?
    As an example, The SAAJ package throws an exception in the log in 5.1.3, so it must be there. Where can I find information about that implementation in JCASP?
    TIA and Br,

  • 5.1.3 Java Collaboration Debug issues...

    Hi All,
    JCAPS Newbie here.
    I've setup debugging for Java Collaboration's deployed on a logical host.
    It seems to work as I can step through the code, except it's just not behaving as I expected with regards to hitting breakpoints & stepping over some methods.
    In a nutshell ...
    1) It doesn't stop on the breakpoints I set.
    2) It always stops in method log( LOG_LEVEL_DEBUG, "xxx" ); when I click "GO" or StepOver???
    Has anyone else seen this behaviour?
    Any ideas about how to get it working correctly???
    Thanks,
    Ken

    FYI...
    This is a known issue with eDesigner,
    I have E-mailed you a Hotfix to apply to your environment which is doing the debugging.
    I have also included a ReadMe which explains how to install the ESR
    Sun Java CAPS Support.

  • Accesing database from static method on java collaboration

    Hi *,
    I want cache data from a oracle database in a java collaboratioon when java collaboration is enabled by emanager.
    My java collaboration has a oracleOTD
    I did an static method on java collaboration, but I can't access database from static method.
    Thanks
    Hector

    hi hector,
    this wont work!
    regards chris

  • Java collaboration initialization method- exists on javacaps 5.1.1?

    Hi everyone
    I have javacaps version 5.1.1
    I want cache properties on a Map in a Java collaboration definition.
    Has a Java collaboration definition an initialization method? or how can implement it?
    Any help will we appreciated

    I do not think in such method exists. If you need to implement the cache at begining of the collaboration- Have a static method in side that method limplement your load properties code. This will gurantee the cache available as long as your JVM life i.e until restart the Integration Server instance.
    Cheers
    Raghu

  • Java Collaboration Suite API - Common Problems......and Solutions!

    , Hi all,
    I'd just like to share some of the issues I've come across in my first try at using the Java Collaboration Suite API (including the Accelerator Kit).
    In short,
    The Good: I've succeeded in getting a working application, and the code doesn't look half bad.
    The Bad: Man was it a pain to get to this point.
    Here are a few notes about what I've found, what can be improved by oracle, and hopefully it will help others.
    1. The initial setup went smoothly. I included the Jar's from the web kit, and was able to successfully connect using OCDConnectionFactory.CreateConnection. This first attempt didn't use the Accelerator Kit, as at the time I didn't even know it existed. As soon as I started to try any examples from Oracle, code snippets wouldn't even compile (usually due to FDKUtils and FDKSession) and I couldn't find out why. After exhaustive research, I found that the Accelerator Kit here (http://www.oracle.com/technology/products/cs/developer/contentservicesdev/contenservicesdevkit.html), but it is not a library in the lib. After even further research, I found a very interesting thing. If you click on the link I've shown, you will see 2 versions of the Accelerator Kit: The recent link just includes the kit as a bunch of classes. I found it kind of ugly to include those in my project. However, if you click on the older link you will find a jar called "content-ws-helper.jar". This is actually the Accelerator Kit in a JAR (yet without any documentation anywhere on this).
    2. When using the accelerator toolkit, the connection string you use to connect changes. It no longer should have "ws" at the end. Don't believe this is documented anywhere! So if your connection string is http://server:8888/content/ws it should be changed to http://server:8888/content/
    <strong>
    </strong>3. Most of the examples given are appreciated, but they are also impossible to read. Methods should not be hundreds of lines of code long! Here is a handy method that I seem to be using quite often (at least in my use cases).
    private Item getFolder(String path) throws OCSServiceException {
    try {
    FileManager fm = Managers.getFileManager(fdkSession);
    Item workspace = fm.resolvePath(path, null);
    CommonManager commonM = Managers.getCommonManager(fdkSession);
    workspace = commonM.getItem(workspace.getId(), attributeRequest);
    return workspace;
    } catch (Exception e) {
    LOGGER.error(e.getMessage(), e);
    throw new OCSServiceException("Exception getting folder");
    The key is the attributeRequest class variable. This is the object that changes depending on what properties I want to retreive regarding that folder. A commonly used one for getting categories is:
    attributeRequest = FdkUtils.newAttributeRequestArray(Attributes.CATEGORY_CONFIGURATION,
    FdkUtils.newAttributeRequestArray(Attributes.ATTRIBUTE_OVERRIDES,
    new AttributeRequest[]{
    FdkUtils.newAttributeRequest(Attributes.ATTRIBUTE_OVERRIDE_ATTRIBUTE),
    FdkUtils.newAttributeRequest(Attributes.ATTRIBUTE_OVERRIDE_DEFAULT),
    FdkUtils.newAttributeRequest(Attributes.ATTRIBUTE_OVERRIDE_CATEGORY_CLASS)
    By seperating this out, It gets rid of a ton of the speghetti like code that you see in most of the examples and on the forums.
    For example, this thread helped me in category updates for folders http://kr.forums.oracle.com/forums/thread.jspa?threadID=495959
    , but as the post at the bottom states, this should not be the difficult. My method, which performs a similar method, is as follows:
    public void updateFolderCategory(String path, String categoryName, String categoryAttributeName, Object value ) throws OCSServiceException {
    try {
    CategoryService cs = new CategoryServiceImpl();
    long categoryId = cs.getCustomCategory(categoryName).getId();
    long attributeId = cs.getCustomAttribute(categoryName, categoryAttributeName).getId();
    NamedValue[] attOverride = new NamedValue[]{
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_ATTRIBUTE, new Long(attributeId)),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_CATEGORY_CLASS, new Long(categoryId)),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_DEFAULT, value),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_REQUIRED, DEFAULT_REQUIRED),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_SETTABLE, DEFAULT_SETTABLE),
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE_PROMPT, DEFAULT_PROMPT),
    NamedValue[] categoryConfigurationAttributes = new NamedValue[]{
    new NamedValue(Attributes.ATTRIBUTE_OVERRIDE, attOverride)
    connect();
    Item folder = getFolder(path);
    Managers.getCategoryManager(fdkSession).setCategoryConfiguration(folder.getId(), categoryConfigurationAttributes);
    LOGGER.info("Updated folder category definition");
    } catch (Exception e) {
    LOGGER.error(e.getMessage(), e);
    throw new OCSServiceException("Exception updating category");
    } finally {
    disconnect();
    I hope this information helps someone, and I'd appreciate if anyone can also add input or critique my approach. I also hope that there is someone else out there who is still using the API and hasn't given up yet!

    I was also looking for something like this..I did not get any response.
    Did you tried to add bpel:exec ? you can call OCS api in the java blockc within BPEL. I am using this and creating folder from BPEL.

  • Thread safety in Java Collaborations

    Is it necessary to write Java Collaborations in a thread safe manner? If so, under what scenario can a JCD become multithreaded?

    The implementation is a bit more complex then this. When you create a JCD that implements an existing web service (ie a JCD that is started by a connector), eDesigner will create a message driven bean that is triggered by the connector and a stateless session bean that will be called from the message driven bean. This stateless session bean will call your JCD web service method, the receive or the start method.
    Because your JCD is hosted in a stateless session bean it will receive all the benefits of the J2EE thread and instance management. If there are multiple JMS messages to process, the application server can create multiple instances of the stateless session bean that hosts your JCd and thereby multiple instances of your JCD class will be created. If these are no longer needed, the application server can destroy them. As stateless session beans are thread safe, you do not need to code your JCD's in a thread safe manner. Of course if you want to access static resources or use singletons then you will need to access these in a threda safe manner from the JCD.
    When you JCD's are started by a JMS message (this is when your JCD's implement the JMS receive web service), you can configure in the connectivity map how many instances of your JCD can be started concurrently by the application server. When double clicking the configuration block on the JMS inbound connection you can specify two options:
    - Connection Consumer or Serial mode: multiple instances can be started when multiple messages are available or not.
    - Server session pool size: how many instances can be created.

  • How do I call a simple java class from a bpel process?

    Hi.
    In JDeveloper 10.1.4.3.0 I've created a simple java class that does an ftp get operation followed by an unzip. The class uses some 3rd part libraries (jars).
    I want to use a simple bpel process to schedule a daily execution of this java class, and deploy it all to our SOA-server, - and was looking into using the <bpelx:exec> function.
    The java class and the bpel process is all stored in the same JDeveloper project.
    How do I put this together so that both my java class and the necessary jars are available to the bpel process?
    I've looked into the JavaExecSample.bpel, and it's says something about "...the class com.otn.samples.javaexec.CreditCalculator is locally packaged with this BPEL process".
    How do I do that?
    Can I make it and test it all locally from my workstation (only JDeveloper installed, I guess there's nothing that can execute the bpel code?), or do I have to compile class etc (make war-file?) and deploy to SOA server (BPEL-INF/lib or classes?) before anything can be tested?
    (I guess all this is simple, once you know how, but being a newbie to this I need a shove in the right direction :-)
    Regards,
    -Haakon-

    To create a java class and dependent jars inside the BPEL process project you need to do the following:
    1. Right click on your BPEL process project and select New and then Java Class from the Items.
    2. Make the BPEL process project, JDeveloper would compile the java classes and add them into the BPEL suite case jar, see the output folder and check the BPEL suite case jar file for java classes and dependent jars.
    You can test your Java classes from JDeveloper IDE, no need to deploy the classes on SOA server. When you make the BPEL project it compiles .bpel files and Java classes. You can test your classes once .bpel file and java classes compiled successfully.
    Regards,
    Dharmendra
    http://soa-howto.blogspot.com

  • Invocation error in Java Embedding activity of BPEL process in 10g

    Hi,
    I am facing an issue as below in Java embedding activity of BPEL process in 10g...
    Could not invoke: "GTM servlet URL" with verb: POST and context: null
    and the code in java embedding activity is as below...
    // create a new rest invoker stub
    RestInvocation invocation = new RestInvocation();
    org.w3c.dom.Element callOtm_process_InputVariable = (org.w3c.dom.Element)getVariableData("Variable_GTMTransmission");
    // get the result el - so we can derive the namespace needed
    org.w3c.dom.Element callOtm_process_OutputVariable = (org.w3c.dom.Element)getVariableData("Variable_GTMTransmissionAck");
    String GTMURL = "GTM servlet URL";
    try
    callOtm_process_OutputVariable = invocation.invoke
    (callOtm_process_InputVariable, "GET", GTMURL, null,
    callOtm_process_OutputVariable.getNamespaceURI());
    setVariableData("Variable_GTMTransmissionAck", callOtm_process_OutputVariable);
    } finally
    addAuditTrailEntry(invocation.getAuditAsString());
    If anybody is aware of this error, please help me to resolve this issue.
    Thanks in advance.

    Try copy the code from java embedding and paste it to eclipse and run it from there. you will find the exact issue.
    Thanks

  • Oracle BPM Java API - getting informations about process activities

    Hi
    I have a problem with Oracle BPM Java API, can someone help me?
    I have a business process project deployed in Oracle SOA Suite and I need to get some informations of my process programatically via Java API.
    Basically I need to get informations about process activities and the corresponding human tasks referenced by these activities.
    I'm able to get the HumanTasks of my Business Catalog and also to get the Activities of my Process, but the relationship between them is null.
    I did some tests, below a piece of code of my test:
    IBPMServiceClient bpmServiceClient = BPMConnectionUtil.getBPMServiceClient();
    IProcessMetadataService processMetadataService = bpmServiceClient.getProcessMetadataService();
    IProcessModelService processModelService = bpmServiceClient.getProcessModelService();
    List<ProcessMetadataSummary> processMetadataSummaryList =
    processMetadataService.listProcessMetadataSummary(BPMConnectionUtil.getBPMContext(), "processNameOrId to find", "processName", "ASC");
    if (processMetadataSummaryList == null || processMetadataSummaryList.size() == 0)
    return;
    ProcessMetadataSummary processMetadataSummary = null;
    for (ProcessMetadataSummary summary: processMetadataSummaryList) {
    if (summary.isIsDefaultRevision()) {
    processMetadataSummary = summary;
    break;
    if (processMetadataSummary == null)
    processMetadataSummary = processMetadataSummaryList.get(0);
    IProcessModelPackage pack = processModelService.getProcessModel(BPMConnectionUtil.getBPMContext(), processMetadataSummary.getCompositeDN(), processMetadataSummary.getProcessName());
    oracle.bpm.project.model.processes.Process process = pack.getProcessModel();
    Sequence<UserTask> activities = process.getActivities(UserTask.class);
    for (UserTask activity: activities) {
    System.out.println("Human Task: " +activity.getHumanTask()); // <<<<<<<<<<<<<<<<<<<<---------------------------- here is the problem. the human task is null, but my activity have a task associated
    There is another way to get this information?
    Thank's

    Hi
    I have a problem with Oracle BPM Java API, can someone help me?
    I have a business process project deployed in Oracle SOA Suite and I need to get some informations of my process programatically via Java API.
    Basically I need to get informations about process activities and the corresponding human tasks referenced by these activities.
    I'm able to get the HumanTasks of my Business Catalog and also to get the Activities of my Process, but the relationship between them is null.
    I did some tests, below a piece of code of my test:
    IBPMServiceClient bpmServiceClient = BPMConnectionUtil.getBPMServiceClient();
    IProcessMetadataService processMetadataService = bpmServiceClient.getProcessMetadataService();
    IProcessModelService processModelService = bpmServiceClient.getProcessModelService();
    List<ProcessMetadataSummary> processMetadataSummaryList =
    processMetadataService.listProcessMetadataSummary(BPMConnectionUtil.getBPMContext(), "processNameOrId to find", "processName", "ASC");
    if (processMetadataSummaryList == null || processMetadataSummaryList.size() == 0)
    return;
    ProcessMetadataSummary processMetadataSummary = null;
    for (ProcessMetadataSummary summary: processMetadataSummaryList) {
    if (summary.isIsDefaultRevision()) {
    processMetadataSummary = summary;
    break;
    if (processMetadataSummary == null)
    processMetadataSummary = processMetadataSummaryList.get(0);
    IProcessModelPackage pack = processModelService.getProcessModel(BPMConnectionUtil.getBPMContext(), processMetadataSummary.getCompositeDN(), processMetadataSummary.getProcessName());
    oracle.bpm.project.model.processes.Process process = pack.getProcessModel();
    Sequence<UserTask> activities = process.getActivities(UserTask.class);
    for (UserTask activity: activities) {
    System.out.println("Human Task: " +activity.getHumanTask()); // <<<<<<<<<<<<<<<<<<<<---------------------------- here is the problem. the human task is null, but my activity have a task associated
    There is another way to get this information?
    Thank's

  • User defined notification & custom alert in business process(eInsight)?

    HI All,
    I have a User Defined Notification Type setup in AlertAgent.
    I want to create a Custom Alert in a Business Process that will be picked up by the User Defined Notification Type I have setup. I can't figure this out though?
    The documentation doesn't seem to cover this (briefly mentions collaborations only), and I can find no examples.
    Can you please explain how this is done, and/or send an example.
    Cheers,
    Ken

    from SUN...
    To send out a custom alert, you'll need to call the alerter.cutom() method. However, this method is available only in a JCD.
    Here is the syntax:
    alerter.custom(String arg0, String arg1, String arg2);
    where
    - arg0 be an existing alert type you created via your properties file, or you defined in the AlertAgent as a new Notification.
    - arg1 is the severity of the alert
    - arg2 is the detailed message for the alert
    example:
    alerter.custom("HD-00001", "INFO", "custom test alert")
    The severity must be one of the valid alert severity levels {"FATAL","CRITICAL","MAJOR","MINOR","WARNING","INFO"}. There is a mention of how this should work in eGate_Sys_Admin_Guide.pdf section 8.4 and 8.4.1.

  • To run a java service in SAP business connector.

    Hi,
    I have created one java service in SAP business connector.When i run it, i get the error as " Service 'rfctest:validatedata' is not operational. To run this service, first recompile the Java source."
    I have set the "path" variable,still i am getting the same error.
    What should i do to solve this problem?

    Hello,
    when you call a BAPI from an external system via Business Connector, you will send a bXML document to BC (for example via HTTP). Refer to the SapbcSAPAdapterGuide for how to do that in detail, its good explained (see 4-25 and 7-3) there.
    The explanation about sender/receiver is not correct. sender and receiver are the logical system names of the SAP backend system and the external system (check in transaction SALE of the SAP system).
    Just send such document to BC, it will create the routing rule automatically. Then complete the routing rule (see 7-2) and activate it.
    CSY

  • Java Business Process Monitoring

    Hello Experts,
    I want to setup Business Process Monitoring between Solman and ECC system.
    Is it possible to setup the JAVA Based  Business process monitoring ?.
    If its possile how to setup for JAVA Busness process monitoring.
    Thanks
    Nikkil

    Hello Nikkil,
    there is no content currently shipped in order to perform Business Process Monitoring for Java components. Can you specify what kind of application you are looking at and what it would be that you owuld like to monitor as part of a business process?
    We could then evaluate in what way a corresponding enhancement for Business Process Monitoring could be also useful for other customers.
    Best Regards
    Volker

Maybe you are looking for

  • Best Buy and Sprint have no sense of morals- I do not recommend either

    I would just like to take the time to post about how Sprint and Best Buy have done a really wonderful job of screwing my monthly budget and account. My ex and I still share the same phone plan and he needed to upgrade his phone. He went into a Best B

  • UPDATE CURRENT Problem

    I am using Oracle8i Release 8.1.6.0.0, and now I encounter an error when running the following PL/SQL Block: 1 declare 2 cursor c1 is 3 (select k1, f1 from geotab1) 4 for update of f1; 5 cursor c2 (key_k1 in geotab1.k1%type) is 6 (select f2 from geot

  • It it possible to run iTunes 8 or higher on Max OS X Panther 10.3?

    Just got new iPod Nano 16G, but have Mac OS X Panther 10.3 so I can't use it. Is there a way to make this work or do I have to break down and buy a new Mac?

  • Hi GURUS SMARTFORMS

    HI GURUS.   i know smartforms litile bit , but want to dovelope a form any one tell me brefily about the form. thanku i am waiting for ur replay.

  • G4 likes to ignore key/mouse input after waking from sleep sometimes

    It doesn't receive any input from a perfectly working logitech USB mouse or the modern Apple Keyboard about every 10th time I wake it from sleep mode, and I have to reboot it. When it's in that ignoring mood, I can unplug and reconnect the mouse, wat