Arquillian和Tomcat6问题

我有两个关于Arquillian和Tomcat的问题:

– 我的arquillian测试失败,出现以下错误消息:

org.jboss.jsfunit.example.hellojsf.HelloJSFTest Time elapsed: 0 sec
<<< ERROR! org.jboss.arquillian.container.spi.ConfigurationException:
Unable to connect to Tomcat manager. The server command
(/deploy?path=%2Ftest) failed with responseCode (401) and
responseMessage (Non-Autorisé). Please make sure that you provided
correct credentials to an user which is able to access Tomcat manager
application. These credentials can be specified in the Arquillian
container configuration as “user” and “pass” properties. The user must
have appripriate role specified in tomcat-users.xml file.

仅供参考我的arquillian.xml文件如下:

<arquillian xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://jboss.org/schema/arquillian
        http://jboss.org/schema/arquillian/arquillian-1.0.xsd">
      <engine>
        <property name="deploymentExportPath">target/</property>
         <property name="jmxPort">8099</property>
        <property name="user">admin</property>
        <property name="pass">admin75</property>
    </engine>

    <defaultProtocol type="Servlet 2.5" />
     <container qualifier="tomcat-remote">
        <configuration>
            <property name="jmxPort">8099</property>
            <property name="user">admin</property>
            <property name="pass">admin75</property>
        </configuration>
    </container>
</arquillian>

我正在尝试为tomcat 6调整示例应用程序.任何人都可以帮忙吗?

– Arquillian何时支持tomcat 7?

问候,

J.

的tomcat-users.xml中:

<tomcat-users>
  <role rolename="manager"/>
  <role rolename="tomcat"/>
  <role rolename="admin"/>
  <role rolename="role1"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
  <user username="admin" password="admin75" roles="manager,admin"/>

</tomcat-users>

最佳答案 这条信息

Unable to connect to Tomcat manager. The server command (/deploy?path=%2Ftest) failed with responseCode (401) and responseMessage (Non-Autorisé).

表示满足以下条件之一:

> Tomcat安装使用的tomcat-users.xml文件没有admin用户(您在arquillian.xml中指定),
>或者admin用户未映射到Tomcat 6中的manager角色或Tomcat 7中的manager-script角色.

When will Arquillian support tomcat 7?

Arquillian支持Tomcat 7,作为emebedded或托管容器.文档不是最新的(截至目前),但配置参数或多或少与Tomcat 6中的嵌入和托管等效项相同.用于的工件ID

>托管的Tomcat 7实例是org.jboss.arquillian.container:arquillian-tomcat-managed-7.
>嵌入式Tomcat 7实例是org.jboss.arquillian.container:arquillian-tomcat-embedded-7.

截至今天,1.0.0.CR2是最新的稳定版本.如果要对开发构建起作用,可以使用1.0.0.Final-SNAPSHOT.

此外,您可以从arquillian.xml文件中省略多个冗余属性.更清洁的配置如下所示:

<arquillian xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://jboss.org/schema/arquillian
        http://jboss.org/schema/arquillian/arquillian-1.0.xsd">
      <engine>
        <property name="deploymentExportPath">target/</property>
    </engine>

    <container qualifier="tomcat-remote">
        <configuration>
            <property name="jmxPort">8099</property>
            <property name="user">admin</property>
            <property name="pass">admin75</property>
        </configuration>
    </container>
</arquillian>
点赞