這是我在這個論壇上的第一個問題,所以我希望你能理解我的問題!配置glassfish部署.war並使用jdbc
在Glassfish中部署應用程序時出現問題。
我一直在開發一個web應用程序,我必須訪問兩個不同的數據庫,一個derby數據庫和一個mysql數據庫。 從NetBeans IDE 7.4開發時,沒有任何問題,我使用SessionBean來訪問這兩個數據庫,並且配置連接太容易了。 我寫在構造函數
Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();
connectionSoria=DriverManager.getConnection("jdbc:derby://localhost:1527/WEBAPP-Soria","App","App");
Class.forName("com.mysql.jdbc.Driver").newInstance();
connectionTeruel=DriverManager.getConnection("jdbc:mysql://localhost:3306/webapp_teruel","root","root");
和一切工作。
問題出在我建立的時候。戰爭,我試圖在沒有NetBeans的情況下將其部署到另一臺計算機上。 我成功部署它,但是當我訪問應用程序時,它向我詢問用戶名和密碼,我將它們都寫入,按登錄,似乎沒有連接任何數據庫。 我搜索了一下,結果我不得不改變連接數據庫的方式,因爲我正在從Glassfish的bin目錄中的asadmin部署應用程序。
我在bean的構造函數連接到數據庫已經寫是這樣的:
ctx1 = new InitialContext();
ds1 = (DataSource)ctx1.lookup("jdbc/WEBAPP-Soria");
ds2 = (DataSource)ctx1.lookup("jdbc/WEBAPP_Teruel");
connectionSoria=ds1.getConnection();
connectionTeruel=ds2.getConnection();
,我添加了兩個資源,glasssfish與
C:\glassfishv3\asadmin
asadmin> start-domain
asadmin> deploy E:\AppV2.war
asadmin> add-resources E:\resources.xml
asadmin> restart-domain
的內容resources.xml是這樣的:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE resources PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Resource Definitions//EN" "http://glassfish.org/dtds/glassfish-resources_1_5.dtd">
<resources>
<jdbc-resource enabled="true" jndi-name="jdbc/WEBAPP-Soria" object-type="user" pool-name="WEBAPP-Soria">
<description/>
</jdbc-resource>
<jdbc-connection-pool allow-non-component-callers="false" associate-with-thread="false" connection-creation-retry-attempts="0" connection-creation-retry-interval-in-seconds="10" connection-leak-reclaim="false" connection-leak-timeout-in-seconds="0" connection-validation-method="auto-commit" datasource-classname="org.apache.derby.jdbc.ClientDriver" fail-all-connections="false" idle-timeout-in-seconds="300" is-connection-validation-required="false" is-isolation-level-guaranteed="true" lazy-connection-association="false" lazy-connection-enlistment="false" match-connections="false" max-connection-usage-count="0" max-pool-size="32" max-wait-time-in-millis="60000" name="WEBAPP-Soria" non-transactional-connections="false" pool-resize-quantity="2" res-type="javax.sql.DataSource" statement-timeout-in-seconds="-1" steady-pool-size="8" validate-atmost-once-period-in-seconds="0" wrap-jdbc-objects="false">
<property name="port" value="1527"/>
<property name="databaseName" value="WEBAPP-Soria"/>
<property name="serverName" value="localhost"/>
<property name="url" value="jdbc:derby://localhost:1527/WEBAPP-Soria"/>
<property name="user" value="App"/>
<property name="password" value="App"/>
</jdbc-connection-pool>
<jdbc-resource enabled="true" jndi-name="jdbc/WEBAPP_Teruel" object-type="user" pool-name="WEBAPP_Teruel">
<description/>
</jdbc-resource>
<jdbc-connection-pool allow-non-component-callers="false" associate-with-thread="false" connection-creation-retry-attempts="0" connection-creation-retry-interval-in-seconds="10" connection-leak-reclaim="false" connection-leak-timeout-in-seconds="0" connection-validation-method="auto-commit" datasource-classname="com.mysql.jdbc.Driver" fail-all-connections="false" idle-timeout-in-seconds="300" is-connection-validation-required="false" is-isolation-level-guaranteed="true" lazy-connection-association="false" lazy-connection-enlistment="false" match-connections="false" max-connection-usage-count="0" max-pool-size="32" max-wait-time-in-millis="60000" name="WEBAPP_Teruel" non-transactional-connections="false" pool-resize-quantity="2" res-type="javax.sql.DataSource" statement-timeout-in-seconds="-1" steady-pool-size="8" validate-atmost-once-period-in-seconds="0" wrap-jdbc-objects="false">
<property name="port" value="3306"/>
<property name="databaseName" value="WEBAPP_Teruel"/>
<property name="serverName" value="localhost"/>
<property name="url" value="jdbc:mysql://localhost:3306/WEBAPP_Teruel"/>
<property name="user" value="root"/>
<property name="password" value="root"/>
</jdbc-connection-pool>
</resources>
反正它不工作,我想我應該加這個水庫目錄WEB-INF中的ources.xml作爲glassfish-resources.xml,但我不知道這是否也可以。
你們建議我應該怎麼做? 非常感謝!