Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
GWT eclispe嵌入式jetty和DBCP连接池_Gwt_Jetty_Apache Commons Dbcp - Fatal编程技术网

GWT eclispe嵌入式jetty和DBCP连接池

GWT eclispe嵌入式jetty和DBCP连接池,gwt,jetty,apache-commons-dbcp,Gwt,Jetty,Apache Commons Dbcp,我正在尝试将GWT(2.0.3)Eclipse插件附带的嵌入式Jetty设置为使用在Tomcat下完美工作的JNDI连接池,但没有成功。现在,由于我已经阅读了一些有关该问题的内容,我已设法做到以下几点: 通过使用以下参数启动jvm,将Jetty命名初始上下文工厂包括到类路径中:-Djava.naming.factory.initial=org.mortbay.naming.InitialContextFactory。 我还创建了一个jettyweb.xml,如下所示: 正如我所说的,这些在T

我正在尝试将GWT(2.0.3)Eclipse插件附带的嵌入式Jetty设置为使用在Tomcat下完美工作的JNDI连接池,但没有成功。现在,由于我已经阅读了一些有关该问题的内容,我已设法做到以下几点: 通过使用以下参数启动jvm,将Jetty命名初始上下文工厂包括到类路径中:
-Djava.naming.factory.initial=org.mortbay.naming.InitialContextFactory
。 我还创建了一个
jettyweb.xml
,如下所示:

正如我所说的,这些在Tomcat下可以很好地工作,并且问题并不特定于DB2,我也无法使用DBCP获得MySQL数据源。查看错误消息,DBCP文件似乎不在类路径中,但我不知道如何将它们放在那里(它们当然在项目构建路径中,但这似乎与Jetty无关)。我可能必须向Djava.naming.factory.initial添加另一个参数,但我不确定DBCP工作的正确参数是什么


干杯

我想你少了一个“Arg”标签

尝试:


java:comp/env/jdbc/db2db
com.ibm.db2.jcc.DB2Driver
jdbc:db2://192.168.0.6:50000/mydb2
测试用户
测试通行证

您为什么必须使用嵌入式码头?正如您可能知道的,it有很多问题,尤其是对于更复杂的项目。我建议使用外部服务器(因为您似乎已经有了Tomcat):我想您是对的,问题是我希望避免另一个配置过程……好吧,如果您将其视为一种避免将来(或者现在,似乎是这样)配置Jetty时出现主要PITA的方法,那就没那么糟糕了;)
<New id="mysqltest" class="org.mortbay.jetty.plus.naming.Resource">
    <Arg>java:comp/env/jdbc/mysqldb</Arg>
    <Arg>
    <New class="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource">
    <Set name="Url">jdbc:mysql://192.168.0.5:3306/mydb</Set>
    <Set name="User">testuser</Set>
    <Set name="Password">testpass</Set>
    </New>
    </Arg>
</New>
<New id="db2test" class="org.mortbay.jetty.plus.naming.Resource">
    <Arg>java:comp/env/jdbc/db2db</Arg>
    <New class="org.apache.commons.dbcp.BasicDataSource">
    <Set name="driverClassName">com.ibm.db2.jcc.DB2Driver</Set>
    <Set name="url">jdbc:db2://192.168.0.6:50000/mydb2</Set>
    <Set name="username">testuser</Set>
    <Set name="password">testpass</Set>
    </New>
</New>
</Configure>
[WARN] Config error at <New id="db2test" class="org.mortbay.jetty.plus.naming.Resource"><Arg>java:comp/env/jdbc/db2db</Arg>...
[WARN] Failed startup of context com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload@7a74db2c{/,/home/..}
java.lang.IllegalStateException: No Constructor <New id="db2test" class="org.mortbay.jetty.plus.naming.Resource"><Arg>java:comp/env/jdbc/db2db</Arg>...
<New id="db2test" class="org.mortbay.jetty.plus.naming.Resource">
    <Arg>java:comp/env/jdbc/db2db</Arg>
    <Arg>
       <New class="org.apache.commons.dbcp.BasicDataSource">
         <Set name="driverClassName">com.ibm.db2.jcc.DB2Driver</Set>
         <Set name="url">jdbc:db2://192.168.0.6:50000/mydb2</Set>
         <Set name="username">testuser</Set>
         <Set name="password">testpass</Set>
       </New>
     </Arg>
</New>