Jul 14

Someone asked a question along the lines of โ€œIs it possible to develop a solution in OpenESB where the HTTP BC receives a request and the SMTP BC uses it to send electronic mail with no BPEL logic to tie the two togetherโ€. I though that the answer was โ€œYesโ€ but I felt I had to verify it. Vishnuvardhan Piskalaramesh from Sun, who is looking after the SMTP BC, and Sherry Weng from Sun, who is looking after the HTTP BC, helped along and here is the result.

This note describes, with illustrations, a mini integration solution wherein an appropriately formulated HTTP GET request is used to submit an electronic mail to a SMTP server, using the HTTP Binding Component and the SMTP Binding Component, without the need to provide any transformation logic. This is another example where a
practical JBI-based integration solution can be constructed in minutes.
05JBI_HTTP2SMTP_NoBPEL.pdf provides the illustrated discussion.

12 Responses to “Java CAPS 6/JBI, Note 5 – HTTP BC to SMTP BC, No BPEL”

  1. Eric Lerognon says:

    Hi Michael,

    these notes are all very interesting. I have the feeling you will have covered all potential interactions between the different Java CAPS 6 styles. One another I think is not covered (correct me if I am wrong) is the following one: JCA Adapter to JCA driven EJB to JBI component (eg XSLT SE to do a transformation, SMTP BC to send an email, BPEL SE to trigger a new business process instance, JBI Bridge to trigger Repository style logic…). Is it in your plan?


  2. Michael Czapski says:

    Hello, Eric.

    I don’t have a plan ๐Ÿ™‚
    As I work on things, or discover things, or see a question to which I may know an answer, and the tim permits, I do one of these things. It takes 4-6 hours, depending on complexity and the amount of trouble I get into, to do a Note. I was planning to do a JCA to BPEL 2.0 but Mark Foster beat me to a half of it already ๐Ÿ™‚ Jason pointed out Mark’s document at http://wikis.sun.com/pages/viewpage.action?pageId=38211717



  3. Eric Lerognon says:

    And you’ve done it! http://blogs.sun.com/javacapsfieldtech/entry/java_caps_6_usning_jca

    These notes are just excellent and are giving us a very good grasp of Java CAPS 6 solutions design and implementation.


  4. Michael Czapski says:

    Thanks, Eric.
    I am glad the effort I am poutting into this is proving beneficial ๐Ÿ™‚



  5. Jay_busireddy says:

    Thanks a lot Michael ,

    Now I figured out that I’ve to take a much deeper dive in to WSDL 2.0.

    By the way I got one more problem ….

    I could able to communicate HTTP BC–> SMTP BC without using BPEL .

    When I tried to do the same example in the following way I could not able to do it .

    1.Create Composite Application in NetBeansIDE
    2. Create WSDL for HTTP BC and WSDL for SMTP BC
    3. Import SMTP BC WSDL to HTTP BC WSDL.
    4. In Service Assembly Editor Canvas add the two ports from above created WSDL.
    5. Now try to connect HTTPBC to SMTPBC in Service Assembly Editor Canvas.

    I could not able connect two end points .

    My question here is, How is the same example worked with step by step procedure that you mentioned in the "05JBI_HTTP2SMTP_NoBPEL.pdf"
    Why not in my step by step procedure mentioned above? Is there any limitation with NetBeansIDE?


  6. Michael Czapski says:

    Hello, Jay.

    In my example I create one WSDL the ‘regular’ way, New -> WSDL Document. and create the other implicitly by dragging the BC to the CASA Editor window. It did not matter which I started with, whether HTTP BC or SMTP BC. I, too, was not able to create two WSDLs ahead of time and then connect them together. There is some bit of ‘magic’ going on when the BC is added to the CASA canvas.



  7. Michael Czapski says:

    The bit of magic that happens is that the WSDL created when the BC is dragged onto the CASA canvas imports the WSDL created by hand. That provides the messages and the port configuration and makes the two ‘connectable’. I tried to reproduce this by hand but the editor does not allow me to create a WSDL quite like the one dragging-an-dropping produces and I did not have the tim to spend working out what needs to be done manally.

  8. Surendra says:

    Hi Michael,
    First of all Thanks for all your efforts. I have a basic question using jcaps 6. I am planning to migrate from 513 to 6. I have my repository in solaris box and iam planning to install netbeans in my windows machine. from netbeans IDE i am not able to do a caps repository project. How can i connect to my repository from this Netbeans IDE ? Is there any document which explains what nbms i need to install to get CAPS Repository functionalty in NetBeans?

    Your comments greatly helps.

    Thanks in advance.

  9. Michael says:

    Hello, Surendra.

    Thanks for the good word ๐Ÿ™‚

    Start with http://docs.sun.com/app/docs/doc/820-3207/inst_overview_c?l=en&a=view
    One of the sections is: http://docs.sun.com/app/docs/doc/820-3207/inst_start_rep_from_netbeans_t?l=en&a=view
    Much as you did in 5.x, you will need to make sure whatever SARs you need are uploaded to the repository (Java CAPS 6 comes with ‘the most common’ pre-installed.



  10. Surendra says:

    Hi Michael,
    Thanks for your pointers. I have gone through these documents. My question is if i install JCAPS6.exe and selecting all products, i have the option to install all CAPS Repositoy netbeans modules into IDE. But if i go for custom installtion and installing only NetBeans(i can connect all others from different server), i am not seeing the option to install CAPS Repository nbms. In this case i need to manually install all the required plug-ins into my NB IDE (I am not able to see JavaCAPSRepository from Tools menu of NB). Where can i get these plug-ins to install. Is there any way to download Netbeans from repository? like downloading eDesigner from Repository which takes care of the connectivity.

    Currently to solve this, i am installing full CAPS suite in my local machine and using that CAPS Ready IDE to conntect to my remote repository.

    This way iam able to connect to remote repository.

    Please suggest.


  11. YY8 says:


    I’m new to JAVACAPS. The SMTP BC is not presented as an option on my WSDL binding palette. I did a custom installation of JAVA CAPS without repository. The list of available BCs of CAPS6 seem very limited comparing to the ones captured in the screen shot of your notes. Can I download these from OPEN ESB? Are they compatible with JAVACAPS6?


  12. Michael Czapski says:


    Java CAPS 6 Update 1, due early next year, will have a bunch of additional binding components and service engines. In the meantime, you can download and use components from the OpenESB site. Bear in mind that installing unsupported component will make your environment unsupported. Things are moving rather rapidly in the OpenESB community. SMTP BC may be deprecated in favour of teh eMail BC. Try that.

    If you are only interested in JBI-based development use OpenESB 20081024 distribution instead of Java CAPS.



Leave a Reply

preload preload preload