A BusinessDelegate is to delegate/pass the information to business layer (For e.g. to a Bean) not to contain business logic itself.
Usually BusinessDelegate passes the info to a SF(SessionFacade) where the actual business logic resides.
For Example:
SampleAction [Action class]
/** Business Delegate instance */
private SampleBD sampleBD = new SampleBD();
execute() [this method should contain code to call testPDFCreate()]
testPDFCreate() [Here you call the createPDF() present in SampleBD]
{
sampleBD.createPDF();
}
SampleBD [It should contain a method that calls the business method present in Bean]
public createPDF()
{
// create Bean (EJBObject) of SampleSFRemote
// call createPDF()
// catch RemoteException
}
SampleSFRemoteHome [This is the Home Interface having the create method to create an
EJB object]
SampleSFRemote create() throws CreateException, RemoteException;
SampleSFRemote [This is a session bean containing the abstarct method createPDF()]
createPDF() throws RemoteException ;
SampleSFBean
public createPDF() {}[Give the method body here. The actual business logic.]
One Important thing to check how you are passing information. Normaly ValueObject is used.
These objects are Serializable.
Can you please check in your project code. I think there must be some DesignPattern being followed.
Just see how other business flow is working.