jboss path\modules\com\mysql\mainAynı klasöre module.xml adında aşağıdaki içeriğe sahip bir XML dosyası eklenmelidir :
<!--?xml version="1.0" encoding="UTF-8"?--> <module xmlns="urn:jboss:module:1.0" name="com.mysql"> <resources> <resource-root path="mysql-connector-java-5.1.15.jar"></resource-root> </resources> <dependencies> <module name="javax.api"></module> </dependencies> </module>
jboss path\standalone\configuration\standalone.xmlşeklindedir. Bu XML dosyadaki drivers elementinin içinde aşağıdaki gibi driver tanımı eklenir :
<driver name="com.mysql" module="com.mysql"> <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>module="com.mysql" içinde geçen com.mysql ismi , module.xml içinde geçen isimle aynısıdır
<datasource jndi-name="java:jboss/datasources/testdb" pool-name="testdb" enabled="true" jta="true" use-java-context="true" use-ccm="true"> <connection-url>jdbc:mysql://ip:port/testdb</connection-url> <driver>com.mysql</driver> <pool> <min-pool-size>1</min-pool-size> <max-pool-size>10</max-pool-size> </pool> <security> <user-name>root</user-name> <password>XXX</password> </security> </datasource>Yukarıda testdb, ip , port , şifre bölümlerine uygun değerleri girmeniz gerekir
String dataSourceJndiName="java:jboss/datasources/testdb"; Context initialContext=new InitialContext(); DataSource dataSource=(DataSource)initialContext.lookup(dataSourceJndiName); Connection connection = dataSource.getConnection(); // Connection alindi
[jbosspath]\modules\com\microsoft\sqlserver\jdbc\mainAynı klasöre module.xml adında aşağıdaki içeriğe sahip bir XML dosyası eklenmelidir :
<module xmlns="urn:jboss:module:1.0" name="com.microsoft.sqlserver.jdbc"> <resources> <resource-root path="sqljdbc4.jar"> </resource-root></resources> <dependencies> <module name="javax.api"></module> <module name="javax.transaction.api"></module> <module name="javax.servlet.api" optional="true"></module> </dependencies> </module>
jboss path\standalone\configuration\standalone.xmlşeklindedir. Bu XML dosyadaki drivers elementinin içinde aşağıdaki gibi driver tanımı eklenir :
<driver name="sqlserver" module="com.microsoft.sqlserver.jdbc"> <xa-datasource-class>com.microsoft.sqlserver.jdbc.SQLServerXADataSource</xa-datasource-class> </driver>module="com.microsoft.sqlserver.jdbc" içinde geçen com.microsoft.sqlserver.jdbc ismi , module.xml içinde geçen isimle aynısıdır
<datasource jndi-name="java:jboss/datasources/testdb" pool-name="testdb" enabled="true" jta="true" use-java-context="true" use-ccm="true"> <connection-url> jdbc:sqlserver://ip:port;databaseName=testdb </connection-url> <driver> sqlserver </driver> <pool> <min-pool-size>1</min-pool-size> <max-pool-size>10</max-pool-size> </pool> <security> <user-name>root</user-name> <password>XXX</password> </security> </datasource>Yukarıda testdb, ip , port , şifre bölümlerine uygun değerleri girmeniz gerekir
String dataSourceJndiName="java:jboss/datasources/testdb"; Context initialContext=new InitialContext(); DataSource dataSource=(DataSource)initialContext.lookup(dataSourceJndiName); Connection connection = dataSource.getConnection(); // Connection alindi
Aynı server'da iki JBoss AS7 standalone server çalıştırmak için ikinci jboss server'ının JBOSS_HOME/standalone/configuration/standalone.xml konfigürasyon dosyasında aşağıdaki değişikliklerin yapılması gerekir.
Bu dosyadaki aşağıdaki bölümlerdeki port değerleri değiştirilmeli
<management-interfaces> <native-interface interface="default" port="19999"/> <http-interface interface="default" port="19990"/> </management-interfaces>
Ardından diğer port'lar aşağıda elemente port-offset attributesi eklenerek değiştirilebilir. port-offset ile default port'lara verilen değer eklenecektir
<socket-binding-group name="standard-sockets"
default-interface="default" port-offset="100">
<socket-binding name="jndi" port="1099"/>
<socket-binding name="jmx-connector-registry" port="1090"/>
<socket-binding name="jmx-connector-server" port="1091"/>
<socket-binding name="http" port="8080"/>
<socket-binding name="https" port="8447"/>
<socket-binding name="osgi-http" port="8090"/>
<socket-binding name="remoting" port="4447"/>
<socket-binding name="txn-recovery-environment" port="4712"/>
<socket-binding name="txn-status-manager" port="4713"/>
<socket-binding name="txn-socket-process-id" port="4714"/>
<socket-binding name="messaging" port="5445"/>
<socket-binding name="messaging-throughput" port="5455"/>
</socket-binding-group>
Bu şekilde ikinci server 8180 portunu kullanacaktır.
JBoss AS 7'yi Windows Server 2008 üzerinde "windows service" olarak çalıştırabilirsiniz.
http://www.jboss.org/jbossweb/downloads/jboss-native-2-0-9.html adresinden jboss-native-2.0.9-windows-x64-ssl.zip dosyasını indirmeniz gerekmektedir. Bu zip dosyasındaki bin klasörü içindeki dosyaları sizin JBoss'daki bin dosyası içerisine kopyalamanız gerekmektedir.
Kopyalama işleminden sonra servisi kurulmalıdır. Bunun için komut satırından JBoss'un bin klasörüne gidip aşağıdaki komutu çalıştırmanız gerekmektedir :
service.bat install
Bu komut çalıştırdıktan sonra JBoss servisini Windows'un yönetici araçlarındaki servisler bölümünden görebilir , başlatabilir ve durdurabilirsiniz . Farklı bir şekilde komut satırından aşağıdaki komutu kullanarak açabilirsiniz :
net start JBAS50SVC
Yine komut satırından servisi kapatabilirsiniz :
net stop JBAS50SVC
Not : Eğer JBoss' servisinin windows açıldığında diğer servislere göre daha geç açılmasını (belirli bir süre bekleyip ondan sonra açılmasını) sağlayabilirsiniz . Bunun için servisin Startup Type''ını "Delayed Start" şeklinde yapmalısınız.
JBoss'da bazı statik dosyaların dışarıdan ziyaret edilmesini isteyebilirsiniz. Örneğin bir a.jpg dosyasını bir klasör altına attığınızda http://
Yukarıdaki işlemler yapıldığında http://
JMXInvokerServlet The JMXInvokerServlet receives posts containing serlized MarshalledInvocation objects that are routed to the invoker given by the the MBean whose object name hash is specified by the invocation.getObjectName() value. The return content is a serialized MarshalledValue containg the return value of the inovocation, or any exception that may have been thrown. org.jboss.invocation.http.servlet.InvokerServlet 1 EJBInvokerServlet The EJBInvokerServlet receives posts containing serlized MarshalledInvocation objects that are routed to the EJB invoker given by the invokerName init-param. The return content is a serialized MarshalledValue containg the return value of the inovocation, or any exception that may have been thrown. org.jboss.invocation.http.servlet.InvokerServlet invokerName jboss:service=invoker,type=http The RMI/HTTP EJB compatible invoker 1 JMXInvokerServlet /JMXInvokerServlet/* JMXInvokerServlet /readonly/JMXInvokerServlet/* EJBInvokerServlet /EJBInvokerServlet/*