一旦托管在Web服务器上,就找不到Servlet

时间:2012-03-19 16:00:40

标签: gwt

主要的问题是,一旦我将servlet上传到我得到的某个虚拟主机服务器上,就无法在网络服务器上找到它,而它在托管模式下使用嵌入式码头发现它一切都很好而花花公子

我无法真正检查主机上的完整tomcat设置,但它确实存在,因为有些.jsp测试文件在那里运行良好,除非有一些我不确定的东西缺失

当直接进入servlet的路径时,在托管模式下它会执行
此URL不支持HTTP方法GET, 而网络服务器上只有404

的web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app 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"
     version="2.5"
     xmlns="http://java.sun.com/xml/ns/javaee">

<!-- Servlets -->
<servlet>
    <servlet-name>retailQuery</servlet-name>
    <servlet-class>com.retail.report.server.DBConnectionServiceImpl</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>retailQuery</servlet-name>
<url-pattern>/retailreport/retailQuery</url-pattern>
</servlet-mapping>

<welcome-file-list>
    <welcome-file>RetailReport.html</welcome-file>
</welcome-file-list>

</web-app>

RetailReport.gwt.xml:

<?xml version="1.0" encoding="UTF-8"?>
<module rename-to='retailreport'>
  <inherits name='com.google.gwt.user.User'/>

  <inherits name='com.google.gwt.user.theme.clean.Clean'/>

<!-- Specify the app entry point class.                         -->
<entry-point class='com.retail.report.client.RetailReport'/> 

<servlet class="com.retail.report.server.DBConnectionServiceImpl"
    path="/retailQuery" />

DBConnectionServiceImpl:

package com.retail.report.client;

import java.util.ArrayList;
import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;

@RemoteServiceRelativePath("retailQuery")
public interface DBConnectionService extends RemoteService {

    public ArrayList<SalesEntry> dayOfWeekQuery(String hier);

    public ArrayList<SalesEntry> weekQuery(String hier);
}

据我所知,当看到类似的servlet未被发现的问题时,一切似乎都是正常的,我唯一不能100%检查的是我不知道的任何tomcat设置需要设置,因为它是webhost上的一些共享tomcat服务器,我不能改变自己的任何东西(虽然可能会问主机是否有实际需要更改的东西)

1 个答案:

答案 0 :(得分:1)

主机上 tomcat / lib 文件夹中的内容是什么? GWT可能假定托管模式下有一些库可用,但部署版本的主机库中缺少这些库。只需确保所有必需的.jar文件都在 classes lib 中的war文件中。