Search code examples
javajakarta-eeglassfishejb

How to deploy a jar to glassfish, which contains a main method?


I'm new to EJB. I have an ejb-jar file which contains, "Class1" and i deployed it to glassfish server. Now there is another jar file which contains only the following client file(it has a dependencey injection), so my problem is how should i execute this file?

I just deployed it to glassfish, but it doesn't work and show error in log file("it contains zero ejb").

import com.pack.Class1;

public class CreateAccoutnClient {

@EJB
private static Class1 class1;

public static void main(String[] args) { }

}

If anyone who have read EJB 3 in Action, i'm tring to deploy chapter3 code to glassfish with eclipse.

Thanks :)


Solution

  • EJB context doesn't execute any main methods, with Glassfish (and others) you must deploy a war to have entry points that run your app or methods (web services or web app).

    A jar can contain MDB, remote ejbs or scheduled timers, or could be just a library. The only way to execute some initialization method at startup is to use the EJB3 @Startup annotation