Reading/Setting Process Data Objects from Java Spring Component or XSLT

I have a BPMN process that references a Spring Component service.
The Spring service has a Java class and within that class I'd like to be able to reference process data objects of the BPMN process.
Ideally, I'd like to simply read and write to those objects within the Java class.
However, if that's not possible, I don't I can set input parameters on the Java class and have it return an object.
If I go that route, how can I pass in or return an object of a type other than your standard types (string, int, boolean)?
For example, I have a data object that is a type I created based on a schema.
How would I refer to that in a Java class?
Hope that makes sense.
Thanks,
Mike

Hi Adam.
I'm a little confused on the order of operations.
Here are the steps I took:
1. In JDeveloper, I created two Java classes: one interface and one class that implements it. Initially, the one method takes parameters that are Strings. I want it to also take a data type that's defined in a schema.
2. In the composite, drag Spring Context component onto screen. This opens the XML and here I define the <bean> that points to the two Java classes I just created.
3. In the composite, I create a pointer from the Spring component to Exposed Services and I create a new service, which creates the WSDL.
4. Now I edit the WSDL to import the schema that defines the type I want.
5. In my BPMN process, I add a call to the service I just created. For Data Associations, it recognizes the changes I made to the WSDL and I can map input variables to the new type added in step 4.
Here's where I'm stuck. In the actual Java class, I don't know how to add the parameter for the data type I created. Where is this Java object created?
Thanks,
Mike

Similar Messages

  • How can read and process data uploded from a datalogger on a network with labview

    hello evryone.
    i have a agilent datalogger 34972a data acquire temperature reading and makes them availlable on a network. i would like to acess this data on a pc running labview, analyse and prsent them. my problem is that i am not quite sure how to tell labview acquire this specific data.
    any help would really help me getting started.
    thanks already.
    Yann

    Are you
    Running the Agilent stand alone (or using Benchlink) and writing data to a file on the network ?
    Do you want to use LabView to control the networked data logger and aquire data? 
    If you are doing #1 then you can not use LabView because the Agilent (and Benchlink) strores data in a proparitary format.
    You have to use Benchlink to export the data to a CSV file before any other program besides Benchlink can read it.
    If you want to do #2 then you simply access the Agilent through VISA just like if it were connected using USB, Serial, or GPIB. 

  • Oracle BPM and JMS Queue: How to associate data from Map Messages to Process Data Objects?

    Good Day!
    I'm currently working on a project wherein it tries to get data from a JMSqueue Map Message being populated by CEP.
    After CEP pushes some data in the JMSqueue. I have BPM configured with a JMS adapter to look up whether there are any messages to be processed upon.
    Inside BPM, I want to know how can I correlate the data from the Map Message to my Process Data Object.
    For example, If I have a Map Object wherein it has 3 attributes:
    FirstName:String
    LastName:String
    Age:int
    What is the expression I need to use inside Oracle BPM Data Association screen in order to map the data from the Map Messages into my process data objects?
    Thanks!
    Regards,
    Jeff

    Any ideas? Thanks!

  • Add/Remove data object from dataset

    Hello,
    I was working out a way to add and remove data from a dataset
    on the fly and could not figure out any built in methods to do
    this.
    As I have decided to include spry in my project I like to try
    and utilise as much as of its code as possible since it is
    complicated to explain I have created a simple example – a
    colour picker! (thought it might be more interesting…) of
    what I am trying to achieve at
    http://www.freshfresh.co.uk/spry/
    - if you have a go on this and maybe look at the source code (all
    the JS is embedded in HTML there are no modifications to other the
    other core files). I have only used spry effects etc, including the
    ‘accordion’ – which I have become quite attached
    to, it is really good for condensing pages down.
    You will see I am using the setDataFromDoc method to create
    the dataset – I tried the .data = myArrayOfData; .dataHash =
    hashTable; method i.e. creating from an object rather than array
    but it did’nt seem to play ball with the
    addDataChangedObserver method – it did’nt update itself
    each time it was modified (I am sorry I cannot remember exactly
    what I did – but I tried all kinds of ways…). I stuck
    with the string method because it worked - each time my new dataset
    changed it updated itself on the screen (you will have to have a
    look to understand.....sorry!!), but I would be interested to know
    how such a thing could be implemented using the object route if you
    believe this would be more efficient.
    My second question is more simple – is there a shorter
    way to add and remove a data object from a dataset? – as you
    can see from the source code I have effectively created an
    ‘interface’ to do these tasks…. I could’nt
    work out whether these methods are already built in. Maybe they
    are?
    Third question is… to extract a data object from a
    dataset I use the .dataHash[the_row_id] method – is this the
    right thing to do or could it lead to complications… that is
    using methods that might supposedly be private?
    Fourth question (observation really) – whilst creating
    that colour picker example I went over board with my datasets and
    loaded in several palettes some of which had over 1000 elements or
    data objects. Which inevitably was very slow (on my computer
    anyway) – but it got me thinking about trimming the contents
    of my spry regions for better performance. I am I right in thinking
    that the less HTML etc that there is in a spry region the quicker
    SPRY will process it. For example say you had spry repeat with an
    image tag in with some onclick, onmousover, onmouseout, style
    attributes etc and compare this to a spry repeat with a simple
    image with minimal attributes set. I suppose what I am trying to
    say is – does spry ‘store’ all the contents of
    each spry region somewhere? Or does it just process it and leave it
    to the browser dom?
    Fifth observation.... I find it really difficult to explain
    computer technicalities in writing. It must be tough reading these
    posts.... I know I find it difficult sometimes when dealing with
    written end user feedback!
    Andrew

    Just clarifying my questions a bit further....
    I found some old code regarding question 1 by using the
    object method I mean something like this...
    var mySwatches = [{'@hex':'ff0000'},{'@hex':'00ff00'}];
    var hashTable = [];
    function createDs(){
    for (var i = 0; i < mySwatches.length; i++)
    mySwatches
    .ds_RowID = i;
    hashTable = mySwatches
    dsMySwatches.data = mySwatches;
    dsMySwatches.dataHash = hashTable;
    dsMySwatches.loadData();
    i.e. not writing out a whole XML string string as the online
    example does. When using this way I did'nt seem to be able to get
    the HTML to refresh. I tried using [
    Spry.Data.updateRegion('mydata'); ] after recreating the dataset I
    also tried adding an [ .addDataChangedObserver ] (like in the
    string example) amongst numerous other ways but it just would not
    work like the string way. - Maybe I did something wrong somewhere.
    In question 3 I refer to the [ .hash ] method .... its not a
    'method' its a 'property' - my question should read - is it ok to
    access private properties (from a browser campatiblity/security
    point of view) that do not have specific methods to gain access to
    them. I suppose it does'nt really matter with JS...
    In question 4 I mention minimising the amount of code in a
    spry region to speed it up. A clearer example of this might be for
    example - a gallery with lots of images. As we know there will be a
    slight delay as SPRY writes all the html so to speed up that intial
    write I strip out all the image attributes such as onlclick do
    this, onmouse over do that... and add these after the images have
    loaded using a seperate function similar to my
    fillSwatches(ds,prefix) function in my online colorpicker example.
    I suppose it like a 2 tier processing of all the data. SPRY does
    the intial display writing to get everything in place and then
    another pass is made over to add any further functionality
    adjustments etc. I am still not sure if that makes any sense!
    ***edit
    Also on the subject of speed and the application as a whole
    i.e. including my PHP - In one example I was creating I ended up
    with an XML structure where each node has over 14 attributes i.e.
    <somenode att1=”x” ……..
    att14=”z”/> - as the file grew it obviously took
    longer to process particularly on the server side, i.e. added all
    those attributes just slowed it all down. So I did
    this…… <somenode att1=”x:y:z” /> i.e
    condensed selected attributes into a string that I could explode
    later on.
    Obviously this limits SPRYS ability to access the attributes
    using the {attr} syntax. I had to create a function to explode the
    array and do the ‘necessary’ on a second pass over the
    data – this works ok for me. But its interesting that in this
    particular case the server could not refresh the XML in an
    acceptable time without doing this – just thought that might
    be interesting to you. I suppose technically what I am doing is
    abusing the concept of an XML structure and simply using it as a
    ‘carrier’ to feed my application …. Which I
    suppose is where JSON comes in…. which is a bit more compact
    and maybe faster to manipulate on both the server and client side
    – I don’t really know, I have never used it –
    just throwing ideas around!!
    Andrew

  • BPM Process Data Object vs Managed Bean

    I need to store an ID which is the primary key of a record in a database in my BPM process so that I can use that to set the bind variable on my view object query. Is it better to store this ID in a process data object or in a managed bean and why is one better than the other?

    I suggest to do the other way.
    Store the BPM Process Instance Id in the Database when you create data in the table.
    Pass this Instance Id to the VO query parameters.
    You can create a page binding of this instance Id from the Data Controls
    I am assuming there is a 1-1 relation between your BPM Process and Database Row.

  • Returning objects from Java stored procedures

    I need to pass an object from Java to a Java SP which updates the object and returns the object back. The Java SP will be calling a PL/SQL procedure which returns some nested tables that I want to stick into the passed object.
    I tried using "IN OUT" for the object in the call spec but got an error that it was not "appropriate for the parameter". So, the next option seems to be to pass it in and then return it from the Java SP. I'm just wondering though what the the best approach for accomplishing this? I've looked through some of the sample code on the OTN but haven't found anything yet that really helps.

    I am trying to use custom object classes. I have setup a type map for the connection and my custom class implements SQLData. Yet, when my client tries to call the Java SP, it gets ORA-00932 complaining of inconsistent data types (expected IN conversion failed).
    I turned on some debug info (i.e. oracle.jdbc.sql=true) but it didn't provide any useful info in regards to why I'm getting this error. Unfortunately, the JDBC Developer's Guide does not provide full examples of the code.

  • Difference between Service data objects and process data object

    Hi
    Can anybody tell me what is the difference between SDO (Service Data Objects) & PDO (Process Data Objects).I am using 2 port PCI-CAN series 2 card.
    If anybody knows the answer then please reply.
    Thanking You

    Hi,
    See the online help file from our NI CANopen Library for LabVIEW for some basic informations about SDOs and PDOs.
    More information should be available from the web.
    DirkW
    Attachments:
    lvcanopenvhelp.zip ‏154 KB

  • How to change a date value from "java.util.Date" to "java.sql.Date"?

    Hi all,
    How to change a date value from "java.util.Date" to "java.sql.Date"?
    I m still confusing what's the difference between them.....
    thanks
    Regards,
    Kin

    Thanks
    but my sql statement can only accept the format (yyyy-MM-dd)
    such as "select * from xx where somedate = '2004-12-31'
    but when i show it to screen, i want to show it as dd-MM-yyyy
    I m using the following to change the jave.util.Date to str and vice versa. But it cannot shows the dd-MM-yyyy. I tried to change the format from yyyy-MM-dd to dd-MM-yyyy, it shows the wrong date in my application.
         public String date2str(java.util.Date thisdate)     {
              if (thisdate != null)     {
                   java.sql.Date thissDate = new java.sql.Date(thisdate.getTime());
                   return date2str(thissDate);
              }     else     {
                   return "";
         public String date2str(java.sql.Date thisdate)     {
              if (thisdate != null)     {
                   SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
                   return sdf.format(thisdate);
              }     else     {
                   return "";
         public java.util.Date str2date(String thisdate)     {
              String dateFormat = "yyyy-MM-dd"; // = 1998-12-31
              java.util.Date returndate = null;
              if (thisdate != null)     {
                   SimpleDateFormat dateFormatter = new SimpleDateFormat(dateFormat);
                   try {
                        returndate = dateFormatter.parse(thisdate);
                   } catch (ParseException pe) {
                        System.out.println (pe.getMessage());
              return returndate;
         }

  • BPM Process Data Object of type Business Objects

    I am using JDeveloper11.1.1.5 and using BPM Project. I have created a business object of type Quote and I want create a Process data object of type Quote. But I don't find 'Browse more types' button on Create data object wizard. I am stuck at this place. Is there any work around or do I need to revert to older version of Jdeveloper.
    Regards
    Sunil Mandrawadkar

    Have you tried with following forum.I think you can find answer quickly from that.
    Business Process Management Suite

  • Nwdi-managed access of pcd-objects from java web dynpro

    Hi,
    im am trying to access portal pcd-objects from a java web dynpro component (namely getting and setting personalized iview properties). for locally managed web dynpro components this works fine with the code below.
    when i try the same with a nwdi managed web dynpro component i run into problems regarding references to used dcs. for instance, i need to reference used dc SAP_JTECHS/tc/epbc/pcm/adminapi/java because the build needs tcepbcpcmadminapijava.jar which is inside the mentioned dc. but access permissions of this dc don't allow the dependency. when i try to "add used dc ..." in nwds i get the error message: illegal dependency: access list does not allow use of ...
    has someone any solution for this problem? are there other ways of accessing pcd-objects from java web dynpro (nwdi managed!)?
    thanks
    heiko
    private static void savePersonalizationData(String value) {
         try {
              IAttributeSet attributeSet = (IAttributeSet) getIview(IVIEW);
              attributeSet.putAttribute(ATTRIBUTE, value);
              attributeSet.save();
         } catch (Exception e) {
    private static Object getIview(String pcdPath) throws Exception {
         Hashtable env = new Hashtable();
         env.put(
              com.sap.portal.directory.Constants.REQUESTED_ASPECT,
              com.sap.portal.pcm.admin.PcmConstants.ASPECT_SEMANTICS);
         env.put(
              Context.SECURITY_PRINCIPAL,
              WDClientUser.getCurrentUser().getSAPUser());
         env.put(
              IPcdContext.PCD_PERSONALIZATION_PRINCIPAL,
              WDClientUser.getCurrentUser().getSAPUser());
         InitialContext iCtx = new InitialContext(env);
         return iCtx.lookup(pcdPath);

    Hi Kust,
    To access the PCD objects the code you used looks ok for me but your main issues is related to the dc access permissions. This thread discussed about the similar issue. Please review this below thread.
    /message/979328#979328 [original link is broken]
    Regards
    Krishna Reddy

  • Calling inactive version of ABAP object from Java

    Hello,
    When I call an ABAP object from Java Program which version of ABAP object is called inactive or active ?
    Is there a mechanism to call the current inactive version or any other previous inactive /active versions ?
    Regards,
    Tarun

    Only the "active" version of ABAP code is active and runnable.
    You cannot run inactive versions. Like you have to compile a .java file to a .class file o make it runnable in the JVM.

  • Return Date object from StoredProcedureCall

    Hi,
    I have a simple call to a StoredProcedure through toplink which returns date parameter. I want to know if I can retrieve a Timestamp or a Date object from executeQuery().
    I get a ClassCastException every time I do that. It works only if I retrieve it as a string. Am I doing something wrong? My code is as follows -
    Session session = getSessionFactory().acquireSession();
    StoredProcedureCall call = new StoredProcedureCall();
    call.setProcedureName("PROC_NAME");
    call.addNamedArgument("P_1");
    call.addNamedArgument("P_2");
    call.addNamedArgument("P_3");
    call.addNamedOutputArgument("P_TRX_DT");
    ValueReadQuery query = new ValueReadQuery();
    query.setCall(call);
    query.addArgument("P_1");
    query.addArgument("P_2");
    query.addArgument("P_3");
    Vector parameters = new Vector();
    parameters.addElement(govNum);
    parameters.addElement(areaCode);
    parameters.addElement(trxType);
    Timestamp trxDateTime = (Timestamp) session.executeQuery(query, parameters);
    Thanks

    In your call to call.addNamedOutputArgument("P_TRX_DT"); , you haven't specified the OUT type of of the arguement "P_TRX_DT". If you dont specify the type, it defaults to java.lang.String. you call should be something along the lines of
    Timestamp P_TRX_DT = null;
    call.addNamedOutputArgument("P_TRX_DT",  // parameter name in stored procedure i.e. the stored procedure should have an OUT parameter name that is exactly
                                                                    // same as P_TRX_DT
                                               "P_TRX_DT",  //arguement name (variable name represesenting the OUT value in java code i.e. declararion from above)
                                               java.sql.Timestamp // Java type that maps to the SQL type returned by the proc i.e. the OUT type map to java type
    //without the comments it should look like this
    call.addNamedOutputArgument("P_TRX_DT","P_TRX_DT",java.sql.Timestamp); Can you post your stored function as well. Also you may want to have a look @ http://www.oracle.com/technology/products/ias/toplink/doc/1013/MAIN/_html/qrybas004.htm. See how DatabaseRecord is used to capture the returned value

  • Cannot Acccess Applet Object from Java Script

    Hi,
    I am using jRE1.5, and Kava Chart Applets. Those applet jars are compiled in jdk 1.5 version. I have created one jsp where I used ,<applet> tag. The problem is when ever I am going to access the applet object from java script it is not returning the actual java applet object, when put an alert message it shows [object]. So i am not able to access the methods or the applet class.and also the screen gets hung, nothing is coming.It get stuck at the point where i tried to access the applet method like document.getElementById(applet_id).<<<some method of the applet class>>.Also it is not showing any kind of javascript error or Applet class exceptions.
    But the strange thing is, when i use jdk 1.6, the page is running fine.Also when i try to print the applet object from javascript it is showing the proper class name.
    Please help me solving the problem.

    A number of changes and improvements were made between 1.5 and 1.6 - the entire plugin is new. You need to change to 1.6, as 1.5 goes EOL about November this year and future changes to this area in 1.5 are unlikely.

  • How to send data to bam data object through java code

    how to send data to bam data object through java code

    I've made a suggestion in other thread: https://forums.oracle.com/thread/2560276
    You can invoke BAM Webservices (Using Oracle BAM Web Services) or use JMS integration using Enterprise Message Sources (http://docs.oracle.com/cd/E17904_01/integration.1111/e10224/bam_ent_msg_sources.htm)
    Regards
    Luis Fernando Heckler

  • Querying instances in 11g and filtering by process data object

    Hi all,
    I have tried to query instance following this link: http://soadev.blogspot.com/2011/07/querying-oracle-bpm-process-instances.html. It works fine, but I need to filter the instances by a process data object with a String type. Is it possible to do this?

    Thanks Mihai
    Does it mean that if the admin user does not purge instances specifically, the uses will continue to find them by querying for completed instances in their worklist (when they have already taken action for their human task, and when the related BPEL instance is finished)?
    Thanks
    Satinder

Maybe you are looking for

  • ITunes Freezes when I try to sync my new iPod Touch

    I can't sync my new iPod with my iTunes library. I have posted in the iTunes forum, although my title says that I have solved the issue. It isn't, so I'm contemptlating reposting. I bought a 64gig iPod Touch the other day to replace an old broken iPo

  • How to find the number of executions of a sql oracle 10g

    Is there any script handy which is useful to get the number of executions of a sql in particualr time in a rac environment.

  • Application Express Database

    I created a database using Application Express and can not recall my password. I am able to log in as an Admin; however the system will not allow me to reset the user's password because an email address is not available in the system. Can anyone tell

  • Latest flex sdk for Flash Builder 4

    HI, We bought Flash Builder 4 Premium and installed it. Now I want to use the latest flex sdk to use with it (I am working on a project using TLF 2). What is the version I should install, is it sdk 4.1 or 4.5(Hero). In Flex 4.1 there are about three

  • HDV capturing problem PE7

    Hi, Im trying to capture HDV in PE7......think I  have all the settings right in Preferences...... But keep getting.......not a supported format or a codec is missing............. What do I do......?........FIL