Domain Class and EJB Component

Hi,
I have defined a set of domain classes(with get/set methods) and a set of EJB Session Beans for the business logics.
The question is, where do I locate the domain classes?
Create a package for it (e.g. com.mysystem.domain)?
Or distribute it into the Session Bean packages (e.g. for account related domain classes, place it into com.mysystem.ejb.account)?
The problem for placing it into the domain package:
1. I have too many domain class ( >200). It's hard to maintain and perform analysis. (Imagine >200 classes in a class diagram)
2. All session beans need to import the "com.mysystem.domain" package in order to reference the domain classes. Therefore, all session beans will have the dependency to the domain package. Is it what component based development (CBD) does?
The problem for distribute it into the Session Bean packages:
1. Some domain classes are heavily depends on other domain classes (e.g Address class has association relationship with the Customer class and Staff class) If I have a session bean for Staff Management(StaffBean) and Customer Management(CustomerBean), where should I put the Address class?
1. Some domain classes are abstract classes. e.g. Person abstract class have a generalization relationship with the Customer class and Staff class. Similiar to point 1, where should I put the Person class?
It is appreciate if anyone can clear my mind of component design.

I have the same confusion, but I think we should place them in a separate packages , a package for each related bundle of domain objects, the logic behind this is that domain object should not know that you are using EJBs or any other technology .
an OO expert advice is appreciated

Similar Messages

  • Redeploying classes and EJBs into a running, external WeblogicServer6.1 application

    Is it possible to debug, edit, compile and deploy the new class and/or EJB using
    jBuilder5 on Win2k and WeblogicServer6.1 on Solaris WITHOUT restarting the app
    server? Is there solid documentation, where? I can debug, but the 'documentation'
    concerning re-deployment on an external WLS application server is vague at best.
    For example, from Borland...."If the EJB already exists in WebLogic Server, it
    may be necessary either to use re-deploy or to remove it from WebLogic Server
    before deployment." From BEA, "...create an empty file named REDEPLOY in the directory
    where the exploded application resides. ... After copying the new files, touch
    the REDEPLOY ...."

    I think i figured this one out. Thanks to everyone who looked at it. Have yourselves a good one.
    WOO HOO

  • Sequence of startup classes and EJB deployment

    The default sequence when WLS is starting is deploying EJB first and then startUpClasses. Could someone tell me if it's possible to change the sequence.
    Thanks a lot in advance.

    Sure have your startup class do its work and then hot-deploy the EJB.
    -- Rob
    Jack wrote:
    >
    The default sequence when WLS is starting is deploying EJB first and then startUpClasses. Could someone tell me if it's possible to change the sequence.
    Thanks a lot in advance.

  • Difference between class and component

    Hi,
    Can any help me
    1) what are the differences betw a java class and java component.
    2) what are the differences betw a java script and java.
    3) Is there any difference betw a java and server side java
    4)what is class path.

    what you seriously need is to read the tutorials.
    ad 1) typically a component is encapsulated in a jar, but a class may be a component, too. this is very much dependent on the context.
    ad 2) Java is a full featured programming language, JavaScript is a typeless scripting language mostly used in internet browsers. they share some basic syntactic constructs, but that's all.
    ad 3) server side java denotes certain functionality implemented in java.
    ad 4) the list of places a virtual machine looks into to load classes
    robert

  • What is a domain class?

    I've looked on google but I can not find the correct answer.
    I have an assignment that says: create a domain class and a DAO to perform the database uptdate.
    What in fact is a domain class?

    jschell wrote:
    Kayaman wrote:
    I haven't heard people talking about DAOs much lately (in relation to Java I mean), since with the latest developments in persistence, you have EJBs pretty much handle the role of data access objects.I don't understand that statement.
    I would associate "EJB" with early J2EE/JEE architecture and as far as questions on this site go there are very few about EJBs (either as a general term or a specific one.) That has been replaced by POJO/Hibernate/JPA as general conversational topics.
    And DAO as Data Access Object doesn't show up as much as any of those but does show up more than EJB.I guess what I meant was having session beans in general handle the data accessing. Of course that's not true for everything. A lot has changed in these 10 or so years I've been involved with Java.
    My perspective is also a bit skewed due to some of the projects I'm involved in. For example we have one project that has been around for several years and it started out with EJB2 tech. Now it uses both EJB2 and EJB3 thanks to a "creative" emulation layer.
    Probably Spring and Struts2 and their friends have taken away the questions that once were about the EJBs. Which is just as well in my opinion.

  • Problem Domain Classes

    Hi:
    I am using "Object-oriented Application Development Using Java" by E. Reed Doke, John W. Satzinger, and Susan R. Williams for my OO class. Currently, I am learning how to create a domain class and how to invoke that class. One of the examples provided by the book involves two .java files, Slip.java (the class definition) and TesterFour.java (to invoke the class definition). When I tried to run TesterFour.java, I got a bunch of error messages. Following are the codes:
    1. Slip.java
    // Chapter 6
    // illustrate a PD class with a static variable and method
    public class Slip
         // attributes
         private int slipId;
         private int width;
         private double slipLength;
         // static attribute variable
         private static int numberOfSlips = 0;
         // constructor with 3 parameters
         public Slip(int anId, int aWidth, double aSlipLength)
              // invoke setters to populate attributes
              setSlipId(anId);
              setWidth(aWidth);
              setSlipLength(aSlipLength);
              numberOfSlips++;
         // custom method to lease a Slip
         public double leaseSlip()
              double fee;
              switch(width)
                   case 10: fee = 800;
                   break;
                   case 12: fee = 900;
                   break;
                   case 14: fee = 1100;
                   break;
                   case 16: fee = 1500;
                   break;
                   default: fee = 0;
              return fee;
         // setters
         public void setSlipId(int anId)
              {slipId = anId;}
         public void setWidth(int aWidth)
              { width = aWidth;}
         public void setSlipLength(double aSlipLength)
              { slipLength = aSlipLength;}
         // getters
         public int getSlipId()
              { return slipId;}
         public int getWidth()
              { return width;}
         public double getSlipLength()
              { return slipLength;}
         // static method
         public static int getNumberOfSlips()
              { return numberOfSlips;}
         // tellAboutSelf
         public String tellAboutSelf()
              String info;
              info = "Slip: Id = "
                        + getSlipId() + ", Width = "
                        + getWidth() + ", Length = "
                        + getSlipLength();               
              return info;
    2. TesterFour.java
    // Chapter 6 - Example 4
    // create 3 instances of Slip and invoke static method getNumberOfSlips
    public class TesterFour
         public static void main(String args[])
              // create an array to hold three Slip references
              Slip slips[] = new Slip[3];
              // create 3 Slip instances & display numberOfSlips for each
              slips[0] = new Slip(1, 10, 20);
              System.out.println("Number of slips " + Slip.getNumberOfSlips());
              slips[1]= new Slip(2, 12, 25);
              System.out.println("Number of slips " + Slip.getNumberOfSlips());
              slips[2]= new Slip(3, 14, 30);
              System.out.println("Number of slips " + Slip.getNumberOfSlips());
              // retrieve & display numberOfSlips using reference variable
              System.out.println("Number of slips (ref var) " + slips[0].getNumberOfSlips());
    Here are the error messages that I got when I tried to run TesterFour.java:
    TesterFour.java [12:1] cannot resolve symbol
    symbol : method getNumberOfSlips ()
    location: class Slip
    System.out.println("Number of slips " + Slip.getNumberOfSlips());
    ___________________________________^
    TesterFour.java [14:1] cannot resolve symbol
    symbol : method getNumberOfSlips ()
    location: class Slip
    System.out.println("Number of slips " + Slip.getNumberOfSlips());
    ___________________________________^
    TesterFour.java [16:1] cannot resolve symbol
    symbol : method getNumberOfSlips ()
    location: class Slip
    System.out.println("Number of slips " + Slip.getNumberOfSlips());
    ___________________________________^
    TesterFour.java [19:1] cannot resolve symbol
    symbol : method getNumberOfSlips ()
    location: class Slip
    System.out.println("Number of slips (ref var) " + slips[0].getNumberOfSlips());
    ___________________________________________^
    4 errors
    Errors compiling main.
    Please help me!! How can I make this code working?? And please remember that the code is originally from the book's CD.
    Thanks a lot.

    Hi,
    I'm sure Forte can find the file Slip.class since otherwise you would get different errors. Search your hard drive perhaps to know where Forte has stored these files.
    If you would have created Slip.java partially, compiled it, and then unzipped the files from the CD, it might not recompile since the last file is older then the class file. Therefor you'll need to delete this one manually (or is there a 'clean' command in Forte perhaps?)

  • Discussion -- Call for answers : Class and Component

    Dear all,
    1. Component has a clear seperation between the specification and implementation? I can't understand here.The interface define some operations,but eventually we need coding to realize it. Where is the speration?
    A class also has methods and coding to realize it. But why we never say a class has a seperation between the specification and implementation?
    2. Component has interface; Java has interface. Are they the same idea or different?
    Call for answers.
    Thanks
    Kevin

    Hi, Kevin,
    First of all, I need to clarify some terminologies and then try to anwser your questions.
    (1) Interface only defines operations, but does not specifies how to implement those operations. In Java, abstract class and interface are interfaces. In CORBA, IDL is interface which can be implemented by differenct programming languages.
    (2) Java class is both an interface and an implementation, because it not only defines operations, but also implements the operations.
    (3) Component provides some specific functionalities, but is not a full-featured application. Usually, a full-featured application consists of many different components. A component can be large or small. A component can be as large as consisting of tens or hundreds of interfaces and classes, like EJB container and server. On the other hand, a component can be as small as comprising only one class; suppose you write a component to calculate foreign currancy conversion.
    (4)Specification is a written document that tries to standardize the development of a large component. A specification specififies each party's responsibilities, such as application developers'responsibilities, vendor's responsibilities, administrtor's responsibilities and so on. Also, it specifies the contracts (interfaces) between each party. In doing so, a component can be made very reuseful and can be plug-in and play; changing different vendor's component without breaking application developer's owner code.
    In Java world, you see a lot of specifications, such as JDBC, EJB and JMS. When SUN defines those specifications, they use Java interfaces rather other classes to specify interfaces. Here, clear seperation between interface and implementation is very important. (1) If a class is used to specify an interface, SUN must provide implementation for the class. But, the purpose of the specification to allow different vendors to provide implementation.(2) Implementation details can very complex and different vendors may implement the same component very differently. A specification only specifies interfaces but not the implementation. The implementation is up to the vendors. Any implementation is ok as long as they comply to the contracts (interfaces). For instance, one vendor may implement a specified interface using one class and another vendor may implement the same interface using three classes. If a class is used to specify an interface, you restrict vendors' implementation. Usually, in a specification, if you find a class that is used to defines an interface, it means that SUN will provide common implementation for it and vendors do not need to implement it.
    In OO design and programing, clearly seperating interfaces from implementations is vital. We should program interface rather than program implementation.
    Thanks.
    Tommy

  • Using Timer and TimerTask classes in EJB's(J2EE)

    Does J2EE allow us to use Timer and TimerTask classes from java.util package in SessionBean EJB's ( Statless or Statefull )?.
    If J2EE does allow, I am not sure how things work in practical, Lets take simple example where a stateless SessionBean creates a Timer class
    and schedules a task to be executed after 5 hours and returns. Assuming
    GC kicks in many times in 5 hours, I wonder if the Timer object created by survives the GC run's so that it can execute the scheduled tasks.
    My gut feeling says that the Timer Object will not survive.. Just
    want to confirm that.
    I will be interested to know If there are any techiniques that can make
    the usage of Timer and TimeTask classes in EJB's possible as well as reliable with minmum impact on over all performance.

    Have a look at J2EE 1.4. I think they add a timer service for EJBs there...
    Kai

  • Web-services.xml for EJB component and SOAP Message Handler Chain

    I have used the following example for my own web service with EJB component and SOAP
    Message Handler Chain:
    http://e-docs.bea.com/wls/docs70/webServices/dd.html#1058208
    I have a deployment error:
    javax.naming.NameNotFoundException: Unable to resolve 'app/ejb/DocumentService.j
    ar#DocumentService/home' Resolved: 'app/ejb' Unresolved:'DocumentService.jar#Doc
    umentService' ; remaining name 'DocumentService.jar#DocumentService/home'
    In attachement is the ear file.
    Is there a problem in web-services.xml?
    Thanks
    [ws_dox_sdi.ear]

    It works. Thanks,
    Ioana
    "Neal Yin" <[email protected]> wrote:
    The error means your EJB is not deployed.
    Adding a EJB module to your application.xml file of the ear should fixe
    it.
    <application>
    <display-name />
    <module>
    <web>
    <web-uri>dox_sdi.war</web-uri>
    </web>
    </module>
    <module>
    <ejb>DocumentService.jar</ejb>
    </module>
    </application>
    "Ioana Meissner" <[email protected]> wrote in message
    news:3cf640cc$[email protected]..
    I have used the following example for my own web service with EJBcomponent and SOAP
    Message Handler Chain:
    http://e-docs.bea.com/wls/docs70/webServices/dd.html#1058208
    I have a deployment error:
    javax.naming.NameNotFoundException: Unable to resolve'app/ejb/DocumentService.j
    ar#DocumentService/home' Resolved: 'app/ejb'Unresolved:'DocumentService.jar#Doc
    umentService' ; remaining name 'DocumentService.jar#DocumentService/home'
    In attachement is the ear file.
    Is there a problem in web-services.xml?
    Thanks

  • Classes, Stateful EJBs and EJB Container

    Hi,
    We have several doubts about classes, servlets, and EJBs.
    We have been told that the instance of non-static classes from JSPs or servlets
    can be a problem if we have a big number of clients connecting to weblogic (or
    any other app server). Would it be a problem? Is it a better practice to instantiate
    those classes from EJBs?
    We have been told that EJBs are managed by the EJB container, and it uses a pool
    for serving them to clients, passivating and activating them. This would include
    the classes instantiated inside them. Is it true?
    If all our guesses are true, the better way to implement a search with pagination
    would be a stateful EJB, using handlers to save it in the client's session. But
    we've heard that stateful EJBs are really bad for server's perfomance. Is it true?
    We are using Weblogic 7.0. If so, what are they useful for???
    If they can be a problem, how to build that searching using stateless EJBs?
    Best regards,
    Ignacio Sanchez

    You're right, the concrete tag to use seems to be:
    <replication-type>InMemory</replication-type>
    Anyway, do you have any further explanation on Stateful's behaviour with many
    clients and pagination implementation?
    "Stanley Beamish" <[email protected]> wrote:
    >
    "Ignacio Sanchez" <[email protected]> wrote in message
    news:[email protected]...
    Thanks for your replies.
    Anyway, I still have some questions about stateful EJBs. In a clusteredenvironment,
    we've been told that stateful EJBs are only balanced before create()method. So,
    if we have already "created" the Remote interface, we're using it,and the
    server
    fails and must be balanced to another instance, what will happen? Willwe
    lost
    that Remote interface and data included in it?
    Not necessarily, you can enable replication, which means that your stateful
    EJB's state (values of i-vars) can be replicated across nodes in a cluster.
    Search through the WLS cluster documentation for details.
    SB
    And about your suggestion on pagination using stateless. Could youplease
    explain
    it in more detail? I haven't understood it well.
    Thank you very much for your attention.
    "Sri" <[email protected]> wrote:
    Hi,
    Look below for my coments.
    S
    "Ignacio Sanchez" <[email protected]> wrote:
    Hi,
    We have several doubts about classes, servlets, and EJBs.
    We have been told that the instance of non-static classes from JSPsor
    servlets
    can be a problem if we have a big number of clients connecting to
    weblogic
    (or
    any other app server). Would it be a problem? Is it a better practice
    to instantiate
    those classes from EJBs?It all boils down to your architecture. If you have a lot of clients
    connecting
    to web container then and if each client needs objects stored in session
    then
    you have to refactor your object distribution. But this could be avoided
    by separating
    static content from dynamic content (using proxies, load balancersetc),
    having
    more web containers etc. It's not necessary to instantiate these classes
    in EJBs
    always (then you are increasing your memory footprint). The generalguidelne
    is
    to do more heavy duty work as you go deeper into tiers hopefully handling
    less
    connections etc.
    We have been told that EJBs are managed by the EJB container, and
    it
    uses a pool
    for serving them to clients, passivating and activating them. Thiswould
    include
    the classes instantiated inside them. Is it true?
    True.
    If all our guesses are true, the better way to implement a search
    with
    pagination
    would be a stateful EJB, using handlers to save it in the client'ssession.
    But
    we've heard that stateful EJBs are really bad for server's perfomance.
    Is it true?
    We are using Weblogic 7.0. If so, what are they useful for???
    True if misused as stateful EJBs, just like HTTP sessions could bereplicated
    and could be activated/passivated.
    If they can be a problem, how to build that searching using stateless
    EJBs?
    You could cache searchs and pass identity and page numbers to theSLSB.
    Best regards,
    Ignacio Sanchez

  • Where should the support classes of servlets, JSPs and EJBs be placed

              Hi
              Could you please tell me where the support classes (simple
              java classes) used by servlets, JSPs and EJBs should be placed.
              I find that my application does not work if I place all the
              support classes of a servlet under $MYSERVER/clientclasses. I need to place some in $MYSERVER/clientclasses and some in
              $MYSERVER/servletclasses. But I figured this out my trial and error and I could not find any logical explanation why some of them should go into $MYSERVER/clientclasses and others into
              $MYSERVER/servletclasses.
              Thanks
              Regards
              Pratima
              

    you can put 'em in weblogic classpath
              Kumar
              Pratima Nambiar wrote:
              > Hi
              > Could you please tell me where the support classes (simple
              > java classes) used by servlets, JSPs and EJBs should be placed.
              > I find that my application does not work if I place all the
              > support classes of a servlet under $MYSERVER/clientclasses. I need to place some in $MYSERVER/clientclasses and some in
              > $MYSERVER/servletclasses. But I figured this out my trial and error and I could not find any logical explanation why some of them should go into $MYSERVER/clientclasses and others into
              > $MYSERVER/servletclasses.
              >
              > Thanks
              > Regards
              > Pratima
              

  • Shared classes between webapplication and ejb

    Hello,
    If I have some java classes that are used by both WebApplication and EJB, do
    I have to include those classes into both war and jar files?
    Regards,
    Peter

    Yes accorinding to WLS Documentation
    --Naggi
    "Programming today is a race between software engineers
    striving to build bigger and better idiot-proof programs, and the universe
    trying to build bigger and better idiots.
    So far, the universe is winning."
    "Peter Tsang" <[email protected]> wrote in message
    news:[email protected]..
    >
    Hello,
    If I have some java classes that are used by both WebApplication and EJB,do
    I have to include those classes into both war and jar files?
    Regards,
    Peter

  • NoSuchMethodError when invoking EJB Component  From BPM Process

    Hi,
    I created BPM process which contains global creation activity and user interactive activity and catalogued ejb component. In user interactive activity i wrote the Process Business Language to invoke Remote EJB deployed in weblogic server. When i tried to execute user interactive activity, i got the following exception.
    Caused by: java.lang.NoSuchMethodError: weblogic.kernel.KernelStatus.isThinIIOPClient()Z
         at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.readObject(RemoteBusinessIntfProxy.java:192)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
         at java.io.ObjectInputStream.readSerialData(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
         at java.io.ObjectInputStream.readSerialData(Unknown Source)
         at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
         at java.io.ObjectInputStream.readObject0(Unknown Source)
         at java.io.ObjectInputStream.readObject(Unknown Source)
         at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:195)
         at weblogic.rjvm.MsgAbbrevInputStream.readObject(MsgAbbrevInputStream.java:565)
         at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:191)
         at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:62)
         at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:201)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:338)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:252)
         at weblogic.jndi.internal.ServerNamingNode_921_WLStub.lookup(Unknown Source)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:374)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:362)
         at javax.naming.InitialContext.lookup(Unknown Source)
         at fuego.jndi.FaultTolerantContext.lookup(FaultTolerantContext.java:515)
         at fuego.connector.impl.BaseRemoteConnector.getReferencedObject(BaseRemoteConnector.java:116)
         at fuego.connector.impl.BaseRemoteConnector.getReferencedObject(BaseRemoteConnector.java:107)
         at fuego.ejb.EJBConnector.getEJBHome(EJBConnector.java:62)
         at fuego.ejb.EJBConnector.getEJBHome(EJBConnector.java:52)
         at fuego.ejb.EJBConnector.getResource(EJBConnector.java:101)
         at fuego.ejb.EJBConnector.getResource(EJBConnector.java:91)
         at fuego.ejb.EJBConnector.getResource(EJBConnector.java:79)
         at fuego.connector.ConnectorTransaction.getResource(ConnectorTransaction.java:276)
         at fuego.connector.EJBHelper.getEJBHome(EJBHelper.java:36)
         at fuego.connector.EJBHelper.getEJBHome(EJBHelper.java:30)
         at fuego.ejb.EJBHome.locate(EJBHome.java:119)
         at OrderManagement.SampleOrderProcess.Default_1_0.Instance.CIL_submitOrder(Instance.xcdl:1)
         at OrderManagement.SampleOrderProcess.Default_1_0.Instance.CIL_submitOrder(Instance.xcdl)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at fuego.component.ExecutionThreadContext.invokeMethod(ExecutionThreadContext.java:512)
    what i noticed here is in Oracle BPM Studio there is weblogic jar file which contains Kernel status file. The KernelStatus file do not have "isThinIIOPClient method". But in wlclient jar file there is Kernel status class which contains "isThinIIOPClient" method.
    How can I override the weblogic.jar and wlclient.jar for Oracle BPM?
    Please help me to resolve this problem.
    Thanks and Regards
    Mahesh Babu

    I resolved the above issue by generating ejb2.1 session bean and ejb2.1 client. But When i tried to invoke ejb2.1 session bean from process using Process Business Language, it throws the following exception.
    Task failed.
    Caused by: Task '0' in activity '/SampleOrderProcess#Default-1.0/Interactive[SubmitOrder]' for instance '/SampleOrderProcess#Default-1.0/1/0' could not be successfully executed. The task failed while executing method 'submitOrder'.
    Caused by: The method 'CIL_submitOrder' from class 'OrderManagement.SampleOrderProcess.Default_1_0.Instance' could not be successfully executed.
    Caused by: java.lang.IncompatibleClassChangeError
    Caused by: fuego.lang.ComponentExecutionException: The method 'CIL_submitOrder' from class 'OrderManagement.SampleOrderProcess.Default_1_0.Instance' could not be successfully executed.
         at fuego.component.ExecutionThreadContext.invokeMethod(ExecutionThreadContext.java:519)
         at fuego.component.ExecutionThreadContext.invokeMethod(ExecutionThreadContext.java:273)
         at fuego.fengine.FEEngineExecutionContext.invokeMethodAsCil(FEEngineExecutionContext.java:219)
         at fuego.server.execution.EngineExecutionContext.runCil(EngineExecutionContext.java:1280)
         at fuego.server.execution.TaskExecution.invoke(TaskExecution.java:401)
         at fuego.server.execution.InteractiveNormalCilExecution.invoke(InteractiveNormalCilExecution.java:425)
         at fuego.server.execution.TaskExecution.executeCIL(TaskExecution.java:513)
         at fuego.server.execution.TaskExecution.executeTask(TaskExecution.java:697)
         at fuego.server.execution.TaskExecution.executeTask(TaskExecution.java:657)
         at fuego.server.execution.TaskExecution.executeTask(TaskExecution.java:154)
         at fuego.server.execution.microactivity.InteractiveMicroActivity.executeNormalCil(InteractiveMicroActivity.java:501)
         at fuego.server.execution.microactivity.InteractiveMicroActivity.executeItem(InteractiveMicroActivity.java:454)
         at fuego.server.execution.microactivity.InteractiveMicroActivity.execute(InteractiveMicroActivity.java:104)
         at fuego.server.AbstractProcessBean$48.execute(AbstractProcessBean.java:3184)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
         at fuego.server.AbstractProcessBean.runTask(AbstractProcessBean.java:3188)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at fuego.lang.JavaClass.invokeMethod(JavaClass.java:1410)
         at fuego.lang.JavaObject.invoke(JavaObject.java:227)
         at fuego.component.Message.process(Message.java:585)
         at fuego.component.ExecutionThread.processMessage(ExecutionThread.java:780)
         at fuego.component.ExecutionThread.processBatch(ExecutionThread.java:755)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:142)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:134)
         at fuego.fengine.FEngineProcessBean.processBatch(FEngineProcessBean.java:244)
         at fuego.component.ExecutionThread.work(ExecutionThread.java:839)
         at fuego.component.ExecutionThread.run(ExecutionThread.java:408)
    Caused by: java.lang.IncompatibleClassChangeError
         at OrderManagement.SampleOrderProcess.Default_1_0.Instance.CIL_submitOrder(Instance.xcdl:5)
         at OrderManagement.SampleOrderProcess.Default_1_0.Instance.CIL_submitOrder(Instance.xcdl)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at fuego.component.ExecutionThreadContext.invokeMethod(ExecutionThreadContext.java:512)
         ... 34 more
    Please help me to resolve this issue.
    Thanks and Regards
    Mahesh Babu

  • Difference b/w Java Class and Bean class

    hi,
    can anybody please tell me the clear difference between ordinary java class and java Bean class. i know that bean is also a java class but i donno the exact difference between the both.
    can anybody please do help me in understanding the concept behind the bean class.
    Thank u in advance.
    Regards,
    Fazlina

    While researching this question, I came across this answer by Kim Fowler. I think it explains it better than any other answer I have seen in the forum.
    Many thanks Kim
    Hi
    Luckily in the java world the definition of components is a little
    less severe than when using COM (I also have, and still occasionaly
    do, worked in the COM world)
    Firstly there are two definitions that need to be clarified and
    separated: JavaBean and EnterpriseJavaBean (EJB)
    EJB are the high end, enterprise level, support for distributed
    component architectures. They are roughly equivalent to the use of MTS
    components in the COM/ COM+ world. They can only run within an EJB
    server and provide support, via the server, for functionality such as
    object pooling, scalability, security, transactions etc. In order to
    hook into this ability EJB have sets of interfaces that they are
    required to support
    JavaBeans are standard Java Classes that follow a set of rules:
    a) Hava a public, no argument constructor
    b) follow a naming patterns such that all accessor and modifier
    functions begin with set/ get or is, e.g.
    public void setAge( int x)
    public int getAge()
    The system can then use a mechanism known as 'reflection/
    introspection' to determine the properties of a JavaBean, literally
    interacting with the class file to find its method and constructor
    signatures, in the example above the JavaBean would end with a single
    property named 'age' and of type 'int' The system simply drops the
    'set' 'get' or 'is' prefix, switches the first letter to lower case
    and deduces the property type via the method definition.
    Event support is handled in a similar manner, the system looks for
    methods similar to
    addFredListener(...)
    addXXXListener
    means the JavaBean supports Fred and XXX events, this information is
    particularly useful for Visual builder tools
    In addition there is the abiliity to define a "BeanInfo' class that
    explicitly defines the above information giving the capability to hide
    methods, change names etc. this can also be used in the case where you
    cannot, for one reason or another, use the naming patterns.
    Finally the JavaBean can optionally - though usually does - support
    the Serializable interface to allow persistence of state.
    As well as standard application programming, JavaBeans are regularly
    used in the interaction between Servlets and JSP giving the java
    developer the ability to ceate ojbect using standard java whilst the
    JSP developer can potentially use JSP markup tags to interact in a
    more property based mechanism. EJB are heaviliy used in Enterprise
    application to allow the robust distribution of process
    HTH.
    Kim

  • Database and ejb access in Input Processor, custom Validator

    Hi guys,
    I know the Portal docs recommend that database and ejb calls should be done in
    a Pipeline Component. Are transactions the only concern?
    I'd like to validate two fields. This can be easily accomplished by a an ejb
    method call that returns a boolean for one, and by running a simple select statement
    for the other. Are there any risks to creating custom validator classes to do
    this?
    Thanks

    David,
    Here are the characterstics of Pipelines and IPs:
    Inputprocessors:
    - Web App scope (classloaded by webapp classloader)
    - simple java class
    Pipelines/Pipeline Components:
    - Enterprise App scope (available to all webapps)
    - java class or EJB
    - can be transactional (can even rollback PipelineSession)
    - Pipelines executed from within the EJB container
    There is nothing illegal about putting EJB calls and JDBC calls into an Inputprocessor.
    For simple validation, this is probably okay. However, when doing heavy business
    logic, having the Pipeline manage a single transaction for your PCs is wonderful.
    PJL
    "David Sun" <[email protected]> wrote:
    >
    Hi guys,
    I know the Portal docs recommend that database and ejb calls should be
    done in
    a Pipeline Component. Are transactions the only concern?
    I'd like to validate two fields. This can be easily accomplished by
    a an ejb
    method call that returns a boolean for one, and by running a simple select
    statement
    for the other. Are there any risks to creating custom validator classes
    to do
    this?
    Thanks

Maybe you are looking for