This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 124217 - EJB usage far too difficult in CASA
Summary: EJB usage far too difficult in CASA
Status: NEW
Alias: None
Product: soa
Classification: Unclassified
Component: Composite Application (show other bugs)
Version: 6.x
Hardware: All All
: P2 blocker (vote)
Assignee: Venkat Chellasamy
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-12-18 19:34 UTC by aegloff
Modified: 2008-03-28 20:55 UTC (History)
1 user (show)

See Also:
Issue Type: ENHANCEMENT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description aegloff 2007-12-18 19:34:59 UTC
Use case: EJBs are core to our platform strategy it must be reasonably easy and consistent as to how to invoke them 
from any project type we release:

for 5.2 that is CASA, BPEL and to a certain degree the classic caps project / BDRU.

An additional use case is that the change management must be reasonable as well, i.e. when a new method is added to 
the EJB we must be able to pick up that change for project that use it.

Specific scnearios:
CASA: Include the EJB in the composite app, create and link up a new binding for that EJB

Issues

   * It seems reasonably straight forward to include the EJB as a
     service (provider) by adding the EJB project as a JBI module and
     dragging & dropping the EJB's web service node onto the CASA
     canvas. Smaller issues
         o The details of the service don't appear until after CASA
           build which doesn't seem obvious. Sometimes have to close
           CASA editor + re-open to actually see it as well
         o The user has to know exactly which part/node of the EJB
           project to drag & drop
   * To create something that invokes this however (a consumer) is very
     hard, as that requires a WSDL. It also creates a one-time copy
     that is hard to maintain. The user either has to
         o deploy the EJB, do a ?WSDL on the web service to get a WSDL
           to import that, change the WSDL to delete the port, undeploy
           the EJB (because she wants it to be part of the composite
           app and not separate), create a new binding that uses that
           same porttype - and there is no easy guidance/wizard to
           create a new binding for existing porttype
         o or know that there is a hidden ant script in the EJB project
           to generate a WSDL somewhere, go to the files tab, navigate
           to the EJB project private build scripts, find the right
           ws-gen ant target and manually run it, find the WSDL file in
           the build and manually import it, modify it etc. as above
   * CASA does not have the technical mechanism to reference WSDLs or
     XSDs in other projects

There are other ways to achieve the same goal, but the number of steps and the indepth knowledge required to make it 
work are way beyond what they should be for a production release.

The user experience should be:

Create an EJB Web Service
Drop it on the CASA canvas (which should reference the WSDL, not just copy it)
Drag a binding from the palette
Connect the two
Deploy

The solution must also address the change management, i.e. in a fashion that is consistent accross the system it must 
be possible to change the EJB and have allow those changes be picked up by the referencing projects in a manner 
transparent to the user.
Comment 1 Venkat Chellasamy 2008-03-28 20:54:45 UTC
several enhancements have been made in this release like wsdl's from ejb can now be generated and placed in the project
of choice. However there is scope for more improvements in the next release.