Monday, December 24, 2012

Ways to Start Your JBoss Instance

Hello There,

JBoss User's, you must be knowing the ways to start the JBoss Application Server by going into its bin directory and invoking standalone.bat or domain.bat (.sh for Unix)

Recently I found a beautiful utility for starting server which is equivalent to WebLogic's "java weblogic.Server command, however JBoss ones look little different.

For this you need to define the JBOSS_HOME for the Jboss Installation directory in Environment Variables of your local system (Windows), for Unix and Linux Systems you may need to set it and include it PATH variable.

Consider my settings are on Windows and have added the JBOSS_HOME in Environment variables of my Windows 7 Operating System.



After this open a command shell and navigate to your JBoss Installation Directory.



You would see below files in the current directory


C:\Users\shailesh.dyade\SandBox\ApplicationServers\jboss-as-7.1.1>dir
 Volume in drive C is OSDisk
 Volume Serial Number is E604-B574

 Directory of C:\Users\shailesh.dyade\SandBox\ApplicationServers\jboss-as-7.1.1

21/11/2012  22:25    <DIR>          .
21/11/2012  22:25    <DIR>          ..
21/11/2012  22:24    <DIR>          appclient
21/11/2012  22:24    <DIR>          bin
21/11/2012  22:24    <DIR>          bundles
21/11/2012  22:24             2,451 copyright.txt
21/11/2012  22:24    <DIR>          docs
21/11/2012  22:24    <DIR>          domain
21/11/2012  22:24           266,549 jboss-modules.jar
21/11/2012  22:24            26,530 LICENSE.txt
21/11/2012  22:25    <DIR>          modules
21/11/2012  22:24             2,421 README.txt
26/11/2012  15:09    <DIR>          standalone
21/11/2012  22:25    <DIR>          welcome-content
               4 File(s)        297,951 bytes
              10 Dir(s)  157,544,517,632 bytes free

C:\Users\shailesh.dyade\SandBox\ApplicationServers\jboss-as-7.1.1>

Here we will just try to start the standalone serverby invoking the org.jboss.as.standalone you will be able to find all the available modules in C:\Users\shailesh.dyade\SandBox\ApplicationServers\jboss-as-7.1.1\modules\org  so that we can try different tasks to invoke and implement.

Just Invoke the below command : 

java -jar jboss-modules.jar -mp "%JBOSS_HOME%\modules"  org.jboss.as.standalone -Djboss.home.dir="%JBOSS_HOME%" on the command line.

Press Enter


20:37:15,557 INFO  [org.jboss.as.naming] (MSC service thread 1-6) JBAS011802: Starting Naming Service
20:37:15,605 INFO  [org.jboss.as.mail.extension] (MSC service thread 1-4) JBAS015400: Bound mail session [java:jboss/mail/Default]
20:37:16,949 INFO  [org.apache.coyote.http11.Http11Protocol] (MSC service thread 1-3) Starting Coyote HTTP/1.1 on http--127.0.0.1-8
080
20:37:16,986 INFO  [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 40) JBAS010403: Deploying JDBC-com
pliant driver class org.h2.Driver (version 1.3)
20:37:20,446 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-5) JBAS010400: Bound data source [java:jbo
ss/datasources/ExampleDS]
20:37:21,453 INFO  [org.jboss.ws.common.management.AbstractServerConfig] (MSC service thread 1-2) JBoss Web Services - Stack CXF Se
rver 4.0.2.GA
20:37:24,254 INFO  [org.jboss.as.server.deployment.scanner] (MSC service thread 1-2) JBAS015012: Started FileSystemDeploymentServic
e for directory C:\Users\shailesh.dyade\SandBox\ApplicationServers\jboss-as-7.1.1\standalone\deployments
20:37:24,299 INFO  [org.jboss.as.remoting] (MSC service thread 1-5) JBAS017100: Listening on /127.0.0.1:9999
20:37:24,299 INFO  [org.jboss.as.remoting] (MSC service thread 1-8) JBAS017100: Listening on /127.0.0.1:4447
20:37:26,666 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
20:37:26,669 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015874: JBoss AS 7.1.1.Final "Brontes" started in 32884ms - Started
133 of 208 services (74 services are passive or on-demand)


Let me explain the command.

java -jar jboss-modules.jar -> Here we are executing the jboss-modules.jar this Jar file is needed to bootstrap the application server Kernel based on the JBoss Modules present in Modules folder.

When we invoke the standalone.sh file or the domain.sh file it will internally does the same Job as WebLogic Server is built.

now let us see the complete command line.

java -jar jboss-modules.jar -mp "%JBOSS_HOME%\modules"  org.jboss.as.standalone -Djboss.home.dir="%JBOSS_HOME%"

-mp : its known for Module Path, we are directing the command to get the modules specified in the command from the Directory specified for this parameter.

And we are specifying the JBoss Home Directory to just guide the command at the right location.

Make sure you provide correct details for the path and the variables specified here otherwise you have chances to get the errors like below.


C:\Users\shailesh.dyade\SandBox\ApplicationServers\jboss-as-7.1.1>java -jar jboss-modules.jar -mp "%JBOSS_HOME%\modules" org.jboss.
as.standalone
java.lang.IllegalStateException: JBAS015816: Missing configuration value for: jboss.home.dir
        at org.jboss.as.server.ServerEnvironment.<init>(ServerEnvironment.java:325)
        at org.jboss.as.server.Main.determineEnvironment(Main.java:242)
        at org.jboss.as.server.Main.main(Main.java:83)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at org.jboss.modules.Module.run(Module.java:260)
        at org.jboss.modules.Main.main(Main.java:291)


Reason : If you do not specify the home directory.

Please try by yourself and let me know if you find any difficulties to start the JBoss Server Instance.

Regards
Shailesh Dyade.


No comments: