我在启动 Jetty 服务器时遇到以下异常。 java.lang.IllegalStateException:没有合适的构造函数:
<New id="tx" class="org.eclipse.jetty.plus.jndi.Transaction">| ? <Arg>utxn</Arg>|? <Arg>|? <New class="com.atomikos.icatch.jta.J2eeUserTransaction"/>|? </Arg>|?</New>
我已将以下内容包含在我的 pom.xml 中。
<dependency>
<groupId>com.atomikos</groupId>
<artifactId>transactions-jta</artifactId>
<version>3.7.0</version>
</dependency>
我的 web.xml 中还有以下内容。
<resource-ref>
<res-ref-name>utxn</res-ref-name>
<res-type>javax.transaction.UserTransaction</res-type>
<res-auth>Container</res-auth>
</resource-ref>
在 jetty-env.xml 中,我指定了以下内容。
<New id="tx" class="org.eclipse.jetty.plus.jndi.Transaction">
<Arg>utxn</Arg>
<Arg>
<New class="com.atomikos.icatch.jta.J2eeUserTransaction"/>
</Arg>
</New>
知道什么可能导致异常吗?
最佳答案
在您的配置中,您尝试使用两个参数创建类 org.eclipse.jetty.plus.jndi.Transaction
的实例:字符串 utxn
和类 的实例>com.atomikos.icatch.jta.J2eeUserTransaction
。
但是类Transaction
没有这样的构造函数,看它的规范here .
关于java - Jetty启动时遇到 "java.lang.IllegalStateException: No suitable constructor",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38715577/