日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

jboss配置文件的簡(jiǎn)單介紹 - JAVA流通橋 - BlogJava

 昵稱6290367 2011-05-13

jboss配置文件的簡(jiǎn)單介紹

這里面是最麻煩的,我會(huì)將遇到的常見(jiàn)錯(cuò)誤描述一下,并說(shuō)明解決方法。

要部署EJB就要修改部署文件,因?yàn)槟J(rèn)生成的部署文件還是有出路的。但是網(wǎng)絡(luò)上很多文章提到需要修改的文件頗多,我在實(shí)際開(kāi)發(fā)的時(shí)候覺(jué)得沒(méi)有必要修改這么多文件,請(qǐng)聽(tīng)我慢慢到來(lái)。

與部署有關(guān)的文件如下:

文件名稱

路徑

用途

standardjaws.xml

jboss-3.0.2\server\default\conf

Entity EJB標(biāo)準(zhǔn)部署描述文件

standardjbosscmp-jdbc.xml

jboss-3.0.2\server\default\conf

JBossCMP容器的標(biāo)準(zhǔn)部署描述文件。

standardjboss.xml

jboss-3.0.2\server\default\conf

JBoss的標(biāo)準(zhǔn)部署描述文件。

oracle-service.xml

jboss-3.0.2\server\default\deploy

Oracle數(shù)據(jù)庫(kù)的部署描述文件(非事務(wù)處理數(shù)據(jù)源),需要從jboss-3.0.2\docs\examples\jcacopy過(guò)來(lái)

oracle-xa-service.xml

jboss-3.0.2\server\default\deploy

Oracle數(shù)據(jù)庫(kù)的部署描述文件(事務(wù)處理數(shù)據(jù)源),需要從jboss-3.0.2\docs\examples\jcacopy過(guò)來(lái)

ejb-jar.xml

jarMETA-INF目錄中

jar及其ejb標(biāo)準(zhǔn)部署描述文件

jaws.xml

jarMETA-INF目錄中

Entity EJB部署描述文件,這個(gè)文件描述了CMP定義以及其持久屬性。

jboss.xml

jarMETA-INF目錄中

EJBJbossJNDI部署描述文件

 

 

 

 

1.        standardjaws.xml:這個(gè)文件主要描述了數(shù)據(jù)源和映射類型,EJB映射的表。這個(gè)數(shù)據(jù)源描述了一個(gè)JNDI名稱,可以通過(guò)這個(gè)JNDI獲得一個(gè)數(shù)據(jù)源連接池。jar包的META-INF目錄中有個(gè)jaws.xml與此文件對(duì)應(yīng),只要把jar中的jaws.xml它配置好了就可以,不用修改這個(gè)文件。

2.        standardjbosscmp-jdbc.xmlJBossCMP容器的標(biāo)準(zhǔn)部署描述文件。網(wǎng)上說(shuō)此文件需要進(jìn)行修改,比如

<defaults>

 缺省的數(shù)據(jù)源

      <datasource>java:/DefaultDS</datasource>

缺省的數(shù)據(jù)庫(kù)類型

      <datasource-mapping>Hypersonic SQL</datasource-mapping>

……..

</defaults>

修改成當(dāng)前使用的配置

當(dāng)前使用的數(shù)據(jù)源

      <datasource>java:/NECOracle</datasource>

當(dāng)前使用的數(shù)據(jù)庫(kù)類型

      <datasource-mapping>Oracle8</datasource-mapping>

但是在實(shí)際操作中沒(méi)有進(jìn)行任何修改也成功的部署了ejb。所以這個(gè)文件應(yīng)該不用修改。

3.        standardjboss.xmlJBoss的標(biāo)準(zhǔn)部署描述文件。此文件不需要修改。

4.        jaws.xmljaws.xml對(duì)應(yīng)standardjaws.xml文件,但是此文件在jarMETA-INF目錄中,這個(gè)文件描述了CMPEJB定義以及其持久屬性。只專門(mén)針對(duì)此jar的數(shù)據(jù)源和映射類型的描述。此文件需要做修改。

<jaws>

此處聲明的DataSource是此jar應(yīng)該對(duì)應(yīng)的DataSource,這個(gè)數(shù)據(jù)源就是在oracle-service.xml中描述的數(shù)據(jù)源,oracle-service.xml中可以有多個(gè)數(shù)據(jù)源,要選擇此jar相對(duì)應(yīng)的數(shù)據(jù)源。如果oracle-service.xml文件只是使用原來(lái)的數(shù)據(jù)源OracleDS,那么此處直接修改就可以:

EntityEJB的數(shù)據(jù)源,這個(gè)OracleDSoracle-service.xml文件默認(rèn)的數(shù)據(jù)源

<datasource> OracleDS</datasource>   

注意:此文件是由JBulider自動(dòng)生成的,所以此DataSource也是自動(dòng)加上的,此名稱缺省與在EJBModule中配置的DataSource的名稱一致,所以為了方便起見(jiàn),EJBModule中配置的DataSource應(yīng)該是oracle-service.xml中被聲明的數(shù)據(jù)源(也可修改oracle-service.xml文件,進(jìn)行添加)。這樣此處就不用進(jìn)行修改。比如本例“NECOracle”就在oracle-service.xml中聲明了。

數(shù)據(jù)庫(kù)的類型,此處必須是正確的,就是必須是standardjbosscmp-jdbc.xml定義的數(shù)據(jù)庫(kù)

<type-mapping>Oracle8</type-mapping>  

以下是此EJB的相關(guān)描述

  <enterprise-beans>

<entity>

EntityEJB的名稱

      <ejb-name>Systui</ejb-name>            

開(kāi)始聲明具體的數(shù)據(jù)庫(kù)字段名稱和EJB域的映射關(guān)系

      <cmp-field>

        <field-name>tuiid</field-name>

        <column-name>TUIID</column-name>

      </cmp-field>

……………..

</enterprise-beans >

 

我們也可以在oracle-service.xml中增加數(shù)據(jù)源,并使用這個(gè)數(shù)據(jù)源(如何增加數(shù)據(jù)源下面oracle-service.xml會(huì)詳細(xì)講到),同時(shí)此名稱缺省值是JBuliderEJBModule中創(chuàng)建的DataSource。

NECOracle是在oracle-service.xml新增的數(shù)據(jù)源

<datasource> NECOracle </datasource>   

數(shù)據(jù)庫(kù)的類型,此處必須是正確的,就是必須是standardjbosscmp-jdbc.xml定義的數(shù)據(jù)庫(kù)

<type-mapping>Oracle8</type-mapping>  

以下是此ejb的相關(guān)描述

  <enterprise-beans>

<entity>

EntityEJB的名稱

      <ejb-name>Systui</ejb-name>             

開(kāi)始聲明具體的數(shù)據(jù)庫(kù)字段名稱和EJB域的映射關(guān)系

      <cmp-field>

        <field-name>tuiid</field-name>

        <column-name>TUIID</column-name>

      </cmp-field>

……………..

</enterprise-beans >

5.        oracle-service.xmlOracle數(shù)據(jù)庫(kù)非事務(wù)處理數(shù)據(jù)源部署描述文件,這個(gè)文件用來(lái)描述oracle數(shù)據(jù)源,可以直接修改當(dāng)前的數(shù)據(jù)源,也可以在此文件中增加數(shù)據(jù)源,本人傾向增加數(shù)據(jù)源,通過(guò)增加就可以有多個(gè)數(shù)據(jù)源供 EJB使用了。我們現(xiàn)在可以對(duì)其進(jìn)行修改:

開(kāi)始描述一個(gè)數(shù)據(jù)源,這個(gè)數(shù)據(jù)源的名稱是OracleDS,

  <mbean code="org.jboss.resource.connectionmanager.LocalTxConnectionManager" name="jboss.jca:service=LocalTxCM,name=OracleDS"> 

    <depends optional-attribute-name="ManagedConnectionFactoryName">

<mbean code="org.jboss.resource.connectionmanager.LocalTxConnectionManager" name="jboss.jca:service=LocalTxCM,name=OracleDS">

…….

此處描述數(shù)據(jù)庫(kù)的連接參數(shù)

            <config-property name="ConnectionURL" type="java.lang.String">jdbc:oracle:thin:@youroraclehost:1521:yoursid</config-property>

此處描述數(shù)據(jù)源的連接驅(qū)動(dòng)          

 <config-property name="DriverClass" type="java.lang.String">oracle.jdbc.driver.OracleDriver</config-property>

訪問(wèn)數(shù)據(jù)庫(kù)的用戶名

            <config-property name="UserName" type="java.lang.String"></config-property>

訪問(wèn)數(shù)據(jù)庫(kù)的密碼

            <config-property name="Password" type="java.lang.String"></config-property>

          </properties>

        </attribute>

……

  </mbean>

修改后

  <mbean code="org.jboss.resource.connectionmanager.LocalTxConnectionManager" name="jboss.jca:service=LocalTxCM,name=OracleDS"> 

    <depends optional-attribute-name="ManagedConnectionFactoryName">

<mbean code="org.jboss.resource.connectionmanager.LocalTxConnectionManager" name="jboss.jca:service=LocalTxCM,name=OracleDS">

…….

此處描述數(shù)據(jù)庫(kù)的連接參數(shù)

            <config-property name="ConnectionURL" type="java.lang.String">jdbc:oracle:thin:@172.28.119.173:1521:comp1</config-property>

此處描述數(shù)據(jù)源的連接驅(qū)動(dòng)          

 <config-property name="DriverClass" type="java.lang.String">oracle.jdbc.driver.OracleDriver</config-property>

訪問(wèn)數(shù)據(jù)庫(kù)的用戶名

            <config-property name="UserName" type="java.lang.String">mrc</config-property>

訪問(wèn)數(shù)據(jù)庫(kù)的密碼

            <config-property name="Password" type="java.lang.String">mrc1</config-property>

          </properties>

        </attribute>

……

  </mbean>

 

我們也可以增加一個(gè)數(shù)據(jù)源

<?xml version="1.0" encoding="UTF-8"?>

<server>

…….

原來(lái)缺省的數(shù)據(jù)源OracleDS

  <mbean code="org.jboss.resource.connectionmanager.LocalTxConnectionManager" name="jboss.jca:service=LocalTxCM,name=OracleDS"> 

    <depends optional-attribute-name="ManagedConnectionFactoryName">

<mbean code="org.jboss.resource.connectionmanager.LocalTxConnectionManager" name="jboss.jca:service=LocalTxCM,name=OracleDS">

…….

            <config-property name="ConnectionURL" type="java.lang.String">jdbc:oracle:thin:@youroraclehost:1521:yoursid</config-property>

<config-property name="DriverClass" type="java.lang.String">oracle.jdbc.driver.OracleDriver</config-property>

            <config-property name="UserName" type="java.lang.String"></config-property>

            <config-property name="Password" type="java.lang.String"></config-property>

          </properties>

        </attribute>

……

</mbean>

 

新增加的一個(gè)數(shù)據(jù)源NECOracle

  <mbean code="org.jboss.resource.connectionmanager.LocalTxConnectionManager" name="jboss.jca:service=LocalTxCM,name=NECOracle"> 

    <depends optional-attribute-name="ManagedConnectionFactoryName">

<mbean code="org.jboss.resource.connectionmanager.LocalTxConnectionManager" name="jboss.jca:service=LocalTxCM,name=NECOracle">

…….

此處描述數(shù)據(jù)庫(kù)的連接參數(shù)

            <config-property name="ConnectionURL" type="java.lang.String">jdbc:oracle:thin:@172.28.119.173:1521:comp1</config-property>

此處描述數(shù)據(jù)源的連接驅(qū)動(dòng)          

 <config-property name="DriverClass" type="java.lang.String">oracle.jdbc.driver.OracleDriver</config-property>

訪問(wèn)數(shù)據(jù)庫(kù)的用戶名

            <config-property name="UserName" type="java.lang.String">mrc</config-property>

訪問(wèn)數(shù)據(jù)庫(kù)的密碼

            <config-property name="Password" type="java.lang.String">mrc1</config-property>

          </properties>

        </attribute>

……

  </mbean>

</server>

 

6.        oracle-xa-service.xml:此文件同oracle-service.xml是一個(gè)道理,區(qū)別在于此文件是描述事務(wù)處理數(shù)據(jù)源的,而oracle-service.xml則是描述非事務(wù)處理數(shù)據(jù)源的。本例使用非事務(wù)處理數(shù)據(jù)源,所以此對(duì)文件沒(méi)有進(jìn)行修改。

7.        ejb-jar.xml:此文件在jarMETA-INF目錄中,是此jar及其EJB的標(biāo)準(zhǔn)部署描述文件。此處需要注意的就是文件中描述的DataSource

 

<ejb-jar>

  <display-name>MyEJBModule</display-name>

  <enterprise-beans>

    <entity>

      <ejb-name>Systui</ejb-name>

      <home>myejb.SystuiHome</home>

……

      <resource-ref>

此處的JDBC名稱缺省值是EJBModule中創(chuàng)建的DataSource的名稱,EJBModule中創(chuàng)建的DataSource應(yīng)該是在oracle-service.xml文件中聲明過(guò)的DataSource,否則此處就需要手工修改成oracle-service.xml中聲明的DataSource的名稱。

        <res-ref-name>jdbc/NECOracle</res-ref-name>

        <res-type>javax.sql.DataSource</res-type>

        <res-auth>Container</res-auth>

      </resource-ref>

    </entity>

</ejb-jar>

 

8.        jboss.xml:此文件在jarMETA-INF目錄中,EJBJbossJNDI部署描述文件。

<jboss>

  <enterprise-beans>

    <entity>

      <ejb-name>Systui</ejb-name>

      <jndi-name>Systui</jndi-name>

      <resource-ref>

此處的JDBC名稱缺省值是EJBModule中創(chuàng)建的DataSource的名稱,EJBModule中創(chuàng)建的DataSource應(yīng)該是在oracle-service.xml文件中聲明過(guò)的DataSource,否則此處就需要手工修改成oracle-service.xml中聲明的DataSource的名稱。

        <res-ref-name>jdbc/NECOracle</res-ref-name>

        <jndi-name>NECOracle</jndi-name>

      </resource-ref>

    </entity>

  </enterprise-beans>

</jboss>

9.        相應(yīng)的部署文件修改完成之后就可以發(fā)布EJB了。“Enterprise”->Server Deployment”進(jìn)入發(fā)布界面,“Action”選擇“Deploy”,“Archive(s)”可以選擇要發(fā)布的jar文件,通常這個(gè)文件和你的工程文件在一個(gè)目錄下。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多