2011-09-06 10 views
2

JBoss AS 4.2.1.GAで動作するAdobe LiveCycle ES 2ターンキープロジェクトを使用しています。 JBossでJNDIバインディングを使用する際に問題が発生しました。以前の記事problem configure JBoss to work with JNDIと酷似しているようですが、私は確かに解決策を見つけませんでした。JBossでのJNDIバインディング(LiveCycleターンキー)

これは私の設定です。次のように

C:\Adobe\Adobe LiveCycle ES2\jboss\server\lc_turnkey\deploy\rmb-ds.xml 

そのファイルの内容です:私は場所に-ds.xmlファイルを持っている

<datasources> 
    <local-tx-datasource> 
     <jndi-name>RMB_DS</jndi-name> 
     <connection-url>jdbc:sqlserver://localhost\SQLEXPRESS;DatabaseName=rmb</connection-url> 
     <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class> 
     <user-name>sa</user-name> 
     <password>password</password> 
     <check-valid-connection-sql>SELECT 1 FROM sysobjects</check-valid-connection-sql> 
     <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) --> 
     <metadata> 
     <type-mapping>MS SQLSERVER2000</type-mapping> 
     </metadata> 
    </local-tx-datasource> 
</datasources> 

I持つJavaプロジェクト、その/人民元/ WebContentを/ WEB-INF/web.xmlファイルには、次のものが含まれています

​​

さて、私はWARを展開するたびに、それが次のエラーで失敗します。

2011-09-06 15:44:17,786 ERROR [org.jboss.deployment.MainDeployer] Could not start deployment: file:/C:/Adobe/Adobe LiveCycle ES2/jboss/server/lc_turnkey/deploy/RMB.war 
org.jboss.deployment.DeploymentException: Error during deploy; - nested throwable: (javax.naming.NamingException: resource-ref: java:RMB_DS has no valid JNDI binding. Check the jboss-web/resource-ref.) 
    at org.jboss.web.AbstractWebDeployer.start(AbstractWebDeployer.java:384) 
... 
Caused by: javax.naming.NamingException: resource-ref: java:RMB_DS has no valid JNDI binding. Check the jboss-web/resource-ref. 
    at org.jboss.web.AbstractWebDeployer.linkResourceRefs(AbstractWebDeployer.java:623) 

JNDIバインディング自体が正しいと私は100%肯定的です。私は、JMX豆> jboss.jdbc> jboss.jdbc>システム> Webコンソールに次のように見ることができます:サービス=メタデータ、データソース= RMB_DS

MBean Name: Domain Name: jboss.jdbc 
service: metadata 
datasource: RMB_DS 
MBean Java Class: org.jboss.ejb.plugins.cmp.jdbc.metadata.DataSourceMetaData 

また、のLiveCycleワークベンチを使用して、私はこのサービスを打つプロセスを作ることができますデータソースjava:/ RMB_DSに対していくつかのSQLを実行します。

だから、私のWARやweb.xmlの権利に間違いがありますか?私は明白な何かを欠いていますか

答えて

1

ケータンのおかげで、誰が素晴らしいです!

のjboss-web.xmlの必要

<?xml version="1.0" encoding="UTF-8"?> 
<jboss-web> 
    <resource-ref> 
     <res-ref-name>RMB_DS</res-ref-name> 
     <jndi-name>java:/RMB_DS</jndi-name> 
    </resource-ref> 
</jboss-web> 

を、元のweb.xmlを変更するには、持っている:RMB-ds.xmlのと一致する

<resource-ref> 
    <description>DB Connection</description> 
    <res-ref-name>RMB_DS</res-ref-name> 
    <res-type>javax.sql.DataSource</res-type> 
    <res-auth>Container</res-auth> 
</resource-ref> 

<datasources> 
    <local-tx-datasource> 
     <jndi-name>RMB_DS</jndi-name> 
     <connection-url>jdbc:sqlserver://localhost\SQLEXPRESS;DatabaseName=RMB</connection-url> 
     <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class> 
     <user-name>sa</user-name> 
     <password>password</password> 
     <check-valid-connection-sql>SELECT 1 FROM sysobjects</check-valid-connection-sql> 
     <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) --> 
     <metadata> 
     <type-mapping>MS SQLSERVER2000</type-mapping> 
     </metadata> 
    </local-tx-datasource> 
</datasources> 
関連する問題