2010-07-22 4 views
2

mysql 데이터베이스를 사용하는 내 gwt 응용 프로그램은 디버깅 할 때 Eclipse에서 normaly로 실행됩니다. 내가 바람둥이에 그것을 실행하면, 그것은 올바르게 표시하지만 RPC (서블릿을 실행하고 데이터베이스에 연결)를 만드는 버튼을 클릭하면 오류가 발생합니다. 내 tomcat 로그를 확인하고 버튼을 클릭하면 404 오류가 표시됩니다.RPC를 사용하여 Tomcat에 GWT를 배포 할 때의 문제 (web.xml 문제 일 가능성이 있음)

0:0:0:0:0:0:0:1 - - [22/Jul/2010:10:32:39 +0200] "GET /Bazica/war/Bazica.html HTTP/1.1" 304 - 
0:0:0:0:0:0:0:1 - - [22/Jul/2010:10:32:39 +0200] "GET /Bazica/war/Bazica.css HTTP/1.1" 304 - 
0:0:0:0:0:0:0:1 - - [22/Jul/2010:10:32:39 +0200] "GET /Bazica/war/bazica/bazica.nocache.js HTTP/1.1" 304 - 
0:0:0:0:0:0:0:1 - - [22/Jul/2010:10:32:39 +0200] "GET /Bazica/war/bazica/ F0C186B415ADBD43522C686552368517.cache.html HTTP/1.1" 304 - 
0:0:0:0:0:0:0:1 - - [22/Jul/2010:10:32:39 +0200] "GET /Bazica/war/bazica/gwt/standard/images/hborder.png HTTP/1.1" 304 - 
0:0:0:0:0:0:0:1 - - [22/Jul/2010:10:33:29 +0200] "POST /Bazica/war/bazica/greet HTTP/1.1" 404 1024 

이 문제는 web.xml 파일 및 url-pattern에서 발생하는 것 같습니다. 나는이 URL 패턴을 이해하지 못한다고 추측한다.

의 Web.xml :

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE web-app 
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
"http://java.sun.com/dtd/web-app_2_3.dtd"> 

<web-app> 

<!-- Servlets --> 
<servlet> 
<servlet-name>greetServlet</servlet-name> 
<servlet-class>com.test.baze.server.GreetingServiceImpl</servlet-class> 
</servlet> 

<servlet-mapping> 
<servlet-name>greetServlet</servlet-name> 
<url-pattern>/bazica/greet</url-pattern> 
</servlet-mapping> 

<!-- Default page to serve --> 
<welcome-file-list> 
<welcome-file>Bazica.html</welcome-file> 
</welcome-file-list> 

</web-app> 

내 인터페이스는 주석 RemoteServiceRelativePath ("인사"), 내가 그것을 관련 생각이 있습니다

package com.test.baze.client; 

import com.google.gwt.user.client.rpc.RemoteService; 
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath; 

/** 
* The client side stub for the RPC service. 
*/ 
@RemoteServiceRelativePath("greet") 
public interface GreetingService extends RemoteService { 
String greetServer(String name) throws IllegalArgumentException; 
} 

내가의 폴더에 URL 패턴을 변경 시도를 내 서비스 구현/WEB-INF/classes/com/test/baze/server하지만 내 응용 프로그램은 메시지없이 응답하지 않습니다. web.xml 또는 sth을 변경하는 데 도움을 주실 수 있습니까? 내 애플 리케이션을 Tomcat에서 작업하게하려면 다른 방법이 필요하다. Tnx. 당신이 look at the docs을 경우

답변

0

, 당신의 URL 패턴은 다음과 같아야합니다

<url-pattern>/module_name/greet</url-pattern> 

하지만 당신의 web.xml에

, 당신은 "bazica"에 모듈 이름을 설정했습니다. bafica에 대한 GWT 모듈 파일 (.gwt.xml 파일)에 renaming the module이 있습니까? 그렇지 않다면 이름을 변경하거나 GWT 모듈 파일의 전체 경로를 사용해야합니다.

+0

예 모듈 이름을 "bazica"()로 변경했습니다. 그 밖의 무엇이 잘못되었을 수 있습니까? – DixieFlatline

+0

모듈 설명에 행을 추가해야합니까? – DixieFlatline

+0

위의 게시물을 수정하고 gwt 모듈 코드를 추가 할 수 있습니까? –

관련 문제