문제

JBoss에서 7.1로 RETEASEY를 시도하기 위해 매우 간단한 테스트 응용 프로그램을 설치했습니다.

환경 :

  • jboss-as-7.1.0.final
  • jboss 도구가있는 Eclipse 3.7
  • maven 3

    I은 자습서의 단계를 따르지 만 동일한 결과를 얻지 못했습니다. WebApp가 올바르게 배포되고 관리 콘솔에 나타나지만 의도 한대로 작동하지 않습니다.

    서버는 per http://localhost:8080/SeamSertalVision/services/test 에 액세스하려고 할 때 404 리소스를 사용할 수 없는지 알려줍니다.

    전체 프로젝트에 4 개의 파일이 있습니다.

    • pom.xml
    • web.xml
    • restabplication.java
    • login.java

      pom.xml은 을 확인하는 하나의 종속성을 가지고 있습니다.

      <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
          <modelVersion>4.0.0</modelVersion>
          <groupId>ch.sertal</groupId>
          <artifactId>SertalVision</artifactId>
          <version>0.0.1-SNAPSHOT</version>
          <packaging>war</packaging>
          <name>SertalVision</name>
          <description />
      
         <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <resteasy.version>2.3.1.GA</resteasy.version>
         </properties>
      
          <build>
              <sourceDirectory>${basedir}/src</sourceDirectory>
              <outputDirectory>${basedir}/build/classes</outputDirectory>
              <resources>
                  <resource>
                      <directory>${basedir}/src</directory>
                      <excludes>
                          <exclude>**/*.java</exclude>
                      </excludes>
                  </resource>
              </resources>
              <plugins>
                  <plugin>
                      <artifactId>maven-war-plugin</artifactId>
                      <configuration>
                          <warSourceDirectory>${basedir}/src/main/webapp</warSourceDirectory>
                      </configuration>
                  </plugin>
                  <plugin>
                      <artifactId>maven-compiler-plugin</artifactId>
                      <configuration>
                          <source>1.7</source>
                          <target>1.7</target>
                      </configuration>
                  </plugin>
              </plugins>
          </build>
      
          <!-- Include the JBoss Maven repository so we can access JBoss artifacts -->
          <repositories>
              <repository>
                  <id>jboss-public-repository</id>
                  <name>JBoss Repository</name>
                  <url>https://repository.jboss.org/nexus/content/groups/public</url>
                  <releases>
                      <enabled>true</enabled>
                  </releases>
                  <snapshots>
                      <enabled>false</enabled>
                  </snapshots>
              </repository>
      
          </repositories>
      
         <pluginRepositories>
            <pluginRepository>
               <id>jboss-public-repository</id>
               <name>JBoss Repository</name>
               <url>https://repository.jboss.org/nexus/content/groups/public</url>
               <releases>
                  <enabled>true</enabled>
               </releases>
               <snapshots>
                  <enabled>false</enabled>
               </snapshots>
            </pluginRepository>
         </pluginRepositories>
      
         <dependencies>
            <dependency>
               <groupId>org.jboss.resteasy</groupId>
               <artifactId>resteasy-jaxrs</artifactId>
               <version>${resteasy.version}</version>
               <scope>provided</scope>
            </dependency>
      
         </dependencies>   
      
      </project>
      
      .

      web.xml은 비어 있습니다 :

      <?xml version="1.0" encoding="UTF-8"?>
      <web-app id="WebApp_ID" version="2.5"
          xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
          <display-name>Sertal Vision</display-name>
      
      </web-app>
      
      .

      restabplication.java는 비어 있습니다 :

      package ch.sertal.vision.server;
      
      import javax.ws.rs.ApplicationPath;
      import javax.ws.rs.core.Application;
      
      @ApplicationPath("/services")
      public class RestApplication extends Application {
      }
      
      .

      login.java는 테스트를위한 하나의 메소드 만 포함합니다 :

      package ch.sertal.vision.server;
      
      import javax.ws.rs.GET;
      import javax.ws.rs.Path;
      import javax.ws.rs.Produces;
      import javax.ws.rs.core.MediaType;
      import javax.ws.rs.core.Response;
      
      @Path( "/test" )
      public class Login {
      
         @GET
         @Produces(MediaType.TEXT_HTML)
         public Response login()  {
            return Response.ok( "logged in" ).build();
         }
      
      }
      
      .

      그게 튜토리얼에서 묘사 된 것처럼 모든 것입니다 (나는 믿습니다). 배포가 잘 작동합니다. welcome-file 항목을 web.xml에 추가하면 표시됩니다.

      다음은 TEH 응용 프로그램이 배포 된 후 jboss 로그입니다.

      WARNING: -logmodule is deprecated. Please use the system property 'java.util.logging.manager' or the 'java.util.logging.LogManager' service loader.
      11:35:17,819 INFO  [org.jboss.modules] JBoss Modules version 1.1.1.GA
      11:35:18,016 INFO  [org.jboss.msc] JBoss MSC version 1.0.2.GA
      11:35:18,060 INFO  [org.jboss.as] JBAS015899: JBoss AS 7.1.0.Final "Thunder" starting
      11:35:18,721 INFO  [org.xnio] XNIO Version 3.0.3.GA
      11:35:18,722 INFO  [org.jboss.as.server] JBAS015888: Creating http management service using socket-binding (management-http)
      11:35:18,732 INFO  [org.xnio.nio] XNIO NIO Implementation Version 3.0.3.GA
      11:35:18,743 INFO  [org.jboss.remoting] JBoss Remoting version 3.2.2.GA
      11:35:18,755 INFO  [org.jboss.as.logging] JBAS011502: Removing bootstrap log handlers
      11:35:18,758 INFO  [org.jboss.as.configadmin] (ServerService Thread Pool -- 26) JBAS016200: Activating ConfigAdmin Subsystem
      11:35:18,770 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 31) JBAS010280: Activating Infinispan subsystem.
      11:35:18,779 INFO  [org.jboss.as.naming] (ServerService Thread Pool -- 38) JBAS011800: Activating Naming Subsystem
      11:35:18,780 INFO  [org.jboss.as.osgi] (ServerService Thread Pool -- 39) JBAS011940: Activating OSGi Subsystem
      11:35:18,781 INFO  [org.jboss.as.security] (ServerService Thread Pool -- 44) JBAS013101: Activating Security Subsystem
      11:35:18,796 INFO  [org.jboss.as.security] (MSC service thread 1-10) JBAS013100: Current PicketBox version=4.0.6.final
      11:35:18,803 INFO  [org.jboss.as.webservices] (ServerService Thread Pool -- 48) JBAS015537: Activating WebServices Extension
      11:35:18,829 INFO  [org.jboss.as.connector] (MSC service thread 1-9) JBAS010408: Starting JCA Subsystem (JBoss IronJacamar 1.0.7.Final)
      11:35:18,856 INFO  [org.jboss.as.naming] (MSC service thread 1-11) JBAS011802: Starting Naming Service
      11:35:18,861 INFO  [org.jboss.as.mail.extension] (MSC service thread 1-12) JBAS015400: Bound mail session [java:jboss/mail/Default]
      11:35:18,911 INFO  [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 27) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)
      11:35:18,937 INFO  [org.jboss.ws.common.management.AbstractServerConfig] (MSC service thread 1-4) JBoss Web Services - Stack CXF Server 4.0.1.GA
      11:35:19,014 INFO  [org.apache.coyote.http11.Http11Protocol] (MSC service thread 1-2) Starting Coyote HTTP/1.1 on http--127.0.0.1-8080
      11:35:19,288 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-13) JBAS010400: Bound data source [java:jboss/datasources/ExampleDS]
      11:35:19,556 INFO  [org.jboss.as.server.deployment.scanner] (MSC service thread 1-8) JBAS015012: Started FileSystemDeploymentService for directory /Development/jboss-as-7.1.0.Final/standalone/deployments
      11:35:19,561 INFO  [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) JBAS015003: Found SeamSertalVision.war in deployment directory. To trigger deployment create a file called SeamSertalVision.war.dodeploy
      11:35:19,574 INFO  [org.jboss.as.remoting] (MSC service thread 1-5) JBAS017100: Listening on /127.0.0.1:9999
      11:35:19,574 INFO  [org.jboss.as.remoting] (MSC service thread 1-11) JBAS017100: Listening on /127.0.0.1:4447
      11:35:19,664 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015874: JBoss AS 7.1.0.Final "Thunder" started in 2145ms - Started 134 of 205 services (70 services are passive or on-demand)
      11:35:19,676 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-14) JBAS015876: Starting deployment of "SeamSertalVision.war"
      11:35:20,028 INFO  [org.jboss.web] (MSC service thread 1-13) JBAS018210: Registering web context: /SeamSertalVision
      11:35:20,066 INFO  [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS018559: Deployed "SeamSertalVision.war"
      
      .

      내 질문은 다음과 같습니다. 내 webservice가 등록되고 있음을 어떻게 확인할 수 있습니까? 로그에 힌트가 없지만 오류가 없습니다. 잘못된 것이 있어야하지만 그것이 무엇인지 볼 수는 없습니다.

      저지와 함께 Tomcat에 응용 프로그램이 있고 로그는 어떤 클래스가 편안한 서비스를 수행하는지 명확하게 보여줍니다.

      도움말 주셔서 감사합니다.

도움이 되었습니까?

해결책

서비스가 필요할 때만 시작하기 때문에 시작 중에 REST 서비스가 등록되어 있는지 여부는 알 수 없습니다. 다음과 같이 표시됩니다.

INFO  [org.jboss.resteasy.cdi.CdiInjectorFactory] (http--127.0.0.1-8080-1)
      Found BeanManager at java:comp/BeanManager
INFO  [org.jboss.resteasy.spi.ResteasyDeployment] (http--127.0.0.1-8080-1)
      Deploying javax.ws.rs.core.Application:
      class my.rest.JaxRsActivator$Proxy$_$$_WeldClientProxy
.

구성에서 중요한 오류가 표시되지 않지만 WEB-INF/beans.xml가 누락 될 수 있습니까?

REST 서비스가있는 JBOSS7의 작업 예제를 얻으려면 다음 ARCHETYPE : org.jboss.spec.archetypes:jboss-javaee6-ear-webapp:7.0.2.CR2를 사용하여 새 프로젝트를 만들 수 있습니다. 7.0.2.CR2에서 7.1.0.Final로 모든 JBoss 종속성 버전을 변경해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top