2016-12-24 16 views
0

Resteasy + Spring MVC + Hibernateを使用しています。私は正常にコードを開発しているが、私は、私は、APIののほとんどが廃止されていることがわかりRESTEasyに依存TIの最新バージョンを更新したときに、私はResteasyClient APIがテストケースで動作しない

@Test 
    public void testCustomerByIdNewAPI() throws Exception{ 
     ResteasyClient client = new ResteasyClientBuilder().build(); 
     ResteasyWebTarget target = client.target(UriBuilder.fromPath(ROOT_URL)); 
     ICustomerService proxy = target.proxy(ICustomerService.class); 

     CustomerType customerType = proxy.getCustomerInfo(1); 
     System.out.println("Name  : "+customerType.getName()); 
     System.out.println("Age  : "+customerType.getAge()); 
     System.out.println("CustomerId : "+customerType.getCustomerId()); 
    } 

static final String ROOT_URL = "http://localhost:8080/RestEasy-Spring-MVC-Hibernate/resteasy/"; 

@Test 
    public void testCustomerById() throws Exception{ 
     ClientRequest request = new ClientRequest(ROOT_URL+"customerservice/getcustomer/1"); 
     request.accept("application/json"); 

     //Obtaining the client response 
     ClientResponse response = request.get(Customer.class); 

     if(response.getResponseStatus().getStatusCode() != 200){ 
      throw new RuntimeException("Failed with HTTP error code : "+ response.getResponseStatus().getStatusCode()); 
     } 

     System.out.println("--------------------------------------"); 
     Customer customer = (Customer) response.getEntity(); 
     System.out.println("STATUS  : "+response.getStatus()); 
     System.out.println("Name  : "+customer.getName()); 
     System.out.println("Age  : "+customer.getAge()); 
     System.out.println("CustomerId : "+customer.getCustomerId()); 
    } 

に次のテストケースによって変更しました

しかし、私は上記のテストケースを実行すると、私は次のようなエラー

javax.ws.rs.NotFoundException: HTTP 404 Not Found 
    at org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.handleErrorStatus(ClientInvocation.java:181) 
    at org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.extractResult(ClientInvocation.java:154) 
    at org.jboss.resteasy.client.jaxrs.internal.proxy.extractors.BodyEntityExtractor.extractEntity(BodyEntityExtractor.java:58) 
    at org.jboss.resteasy.client.jaxrs.internal.proxy.ClientInvoker.invoke(ClientInvoker.java:104) 
    at org.jboss.resteasy.client.jaxrs.internal.proxy.ClientProxy.invoke(ClientProxy.java:62) 
    at com.sun.proxy.$Proxy23.getCustomerInfo(Unknown Source) 
    at test.resteasy.series.spring.mvc.hibernate.service.CustomerTest.testCustomerByIdNewAPI(CustomerTest.java:72) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) 
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) 
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) 
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) 
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) 
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) 
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) 
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) 
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) 
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) 
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) 
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) 
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363) 
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86) 
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382) 
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192) 

見ますTomcatのサーバーからのログ:

javax.ws.rs.NotFoundException: Could not find resource for full path: http://localhost:8080/RestEasy-Spring-MVC-Hibernate/resteasy/customerservice/getcustomer/resteasy/customerservice/getcustomer/1 
    at org.jboss.resteasy.core.registry.SegmentNode.match(SegmentNode.java:112) ~[resteasy-jaxrs-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.core.registry.RootNode.match(RootNode.java:43) ~[resteasy-jaxrs-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.core.registry.RootClassNode.match(RootClassNode.java:48) ~[resteasy-jaxrs-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.core.ResourceMethodRegistry.getResourceInvoker(ResourceMethodRegistry.java:444) ~[resteasy-jaxrs-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.core.SynchronousDispatcher.getInvoker(SynchronousDispatcher.java:234) ~[resteasy-jaxrs-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.springmvc.ResteasyHandlerMapping.getInvoker(ResteasyHandlerMapping.java:109) ~[resteasy-spring-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.springmvc.ResteasyHandlerMapping.getHandler(ResteasyHandlerMapping.java:85) ~[resteasy-spring-3.0.8.Final.jar:na] 
    at org.springframework.web.servlet.DispatcherServlet.getHandler(DispatcherServlet.java:1123) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:934) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:895) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:967) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:858) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:624) [servlet-api.jar:na] 
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:843) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) [servlet-api.jar:na] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.73] 
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat7-websocket.jar:7.0.73] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:218) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) [catalina.jar:7.0.73] 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) [catalina.jar:7.0.73] 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) [catalina.jar:7.0.73] 
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:958) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) [catalina.jar:7.0.73] 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:452) [catalina.jar:7.0.73] 
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1087) [tomcat-coyote.jar:7.0.73] 
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) [tomcat-coyote.jar:7.0.73] 
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) [tomcat-coyote.jar:7.0.73] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_101] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_101] 
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-coyote.jar:7.0.73] 
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_101] 
2016-12-24 18:20:19 [http-bio-8080-exec-5] WARN o.s.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/RestEasy-Spring-MVC-Hibernate/resteasy/customerservice/getcustomer/resteasy/customerservice/getcustomer/1] in DispatcherServlet with name 'springmvc-hibernate-resteasy' 
2016-12-24 18:20:19 [http-bio-8080-exec-5] DEBUG o.s.web.servlet.DispatcherServlet - Successfully completed request 
2016-12-24 18:22:33 [http-bio-8080-exec-9] DEBUG o.s.web.servlet.DispatcherServlet - DispatcherServlet with name 'springmvc-hibernate-resteasy' processing GET request for [/RestEasy-Spring-MVC-Hibernate/resteasy/resteasy/customerservice/getcustomer/1] 
2016-12-24 18:22:33 [http-bio-8080-exec-9] DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Looking up handler method for path /resteasy/customerservice/getcustomer/1 
2016-12-24 18:22:33 [http-bio-8080-exec-9] DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Did not find handler method for [/resteasy/customerservice/getcustomer/1] 
2016-12-24 18:22:33 [http-bio-8080-exec-9] ERROR o.j.r.s.ResteasyHandlerMapping - Resource Not Found: Could not find resource for full path: http://localhost:8080/RestEasy-Spring-MVC-Hibernate/resteasy/resteasy/customerservice/getcustomer/1 
javax.ws.rs.NotFoundException: Could not find resource for full path: http://localhost:8080/RestEasy-Spring-MVC-Hibernate/resteasy/resteasy/customerservice/getcustomer/1 
    at org.jboss.resteasy.core.registry.ClassNode.match(ClassNode.java:73) ~[resteasy-jaxrs-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.core.registry.RootClassNode.match(RootClassNode.java:48) ~[resteasy-jaxrs-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.core.ResourceMethodRegistry.getResourceInvoker(ResourceMethodRegistry.java:444) ~[resteasy-jaxrs-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.core.SynchronousDispatcher.getInvoker(SynchronousDispatcher.java:234) ~[resteasy-jaxrs-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.springmvc.ResteasyHandlerMapping.getInvoker(ResteasyHandlerMapping.java:109) ~[resteasy-spring-3.0.8.Final.jar:na] 
    at org.jboss.resteasy.springmvc.ResteasyHandlerMapping.getHandler(ResteasyHandlerMapping.java:85) ~[resteasy-spring-3.0.8.Final.jar:na] 
    at org.springframework.web.servlet.DispatcherServlet.getHandler(DispatcherServlet.java:1123) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:934) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:895) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:967) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:858) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:624) [servlet-api.jar:na] 
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:843) [spring-webmvc-4.2.8.RELEASE.jar:4.2.8.RELEASE] 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) [servlet-api.jar:na] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.73] 
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat7-websocket.jar:7.0.73] 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:218) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) [catalina.jar:7.0.73] 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169) [catalina.jar:7.0.73] 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) [catalina.jar:7.0.73] 
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:958) [catalina.jar:7.0.73] 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) [catalina.jar:7.0.73] 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:452) [catalina.jar:7.0.73] 
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1087) [tomcat-coyote.jar:7.0.73] 
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637) [tomcat-coyote.jar:7.0.73] 
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) [tomcat-coyote.jar:7.0.73] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_101] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_101] 
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-coyote.jar:7.0.73] 
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_101] 
2016-12-24 18:22:33 [http-bio-8080-exec-9] WARN o.s.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/RestEasy-Spring-MVC-Hibernate/resteasy/resteasy/customerservice/getcustomer/1] in DispatcherServlet with name 'springmvc-hibernate-resteasy' 
2016-12-24 18:22:33 [http-bio-8080-exec-9] DEBUG o.s.web.servlet.DispatcherServlet - Successfully completed request 
+0

残りのエンドポイントがマップされていないようです。あなたの春の起動からの出力を投稿してください。 –

答えて

-1

[OK]をクリックします。私も問題を見る。テストケースは、次のように作成する必要があります。

final String path = "http://localhost:8080/RestEasy-Spring-MVC-Hibernate/"; 
ICustomerService proxy = null; 

    @Before 
    public void beforeClass(){ 
     ResteasyClient client = new ResteasyClientBuilder().build(); 
     ResteasyWebTarget target = client.target(UriBuilder.fromPath(path)); 
     proxy = target.proxy(ICustomerService.class); 
    } 

@Test 
    public void testCustomerByIdNewAPI() throws Exception{ 
     CustomerType customerType = proxy.getCustomerInfo(1); 
     System.out.println("----------------------------------------------------"); 
     System.out.println("Name  : "+customerType.getName()); 
     System.out.println("Age  : "+customerType.getAge()); 
     System.out.println("CustomerId : "+customerType.getCustomerId()); 
    } 
関連する問題