SERVICE_UNAVAILABLE Google Web Toolkit

时间:2013-08-13 16:55:10

标签: gwt rpc gwt-rpc

我正在进行一个小型GWT项目,每次在开发模式下运行时都会出现此错误。

HTTP ERROR: 503

Problem accessing /Segnalazioni_Degrado.html. Reason: 
SERVICE_UNAVAILABLE


--------------------------------------------------------------------------------
Powered by Jetty://

这些是我创建的服务类:DataLayerService,DataLayerServiceAsync,DataLayerImpl

package com.tesi.client;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.List;

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

@RemoteServiceRelativePath("dataLayer")
    public interface DataLayerService extends RemoteService {

    List<Segnalazione> getListaSegnalazioniAttivePerMappa();

} 

package com.tesi.client;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.List;

import com.google.gwt.user.client.rpc.AsyncCallback;

public interface DataLayerServiceAsync {

void getListaSegnalazioniAttivePerMappa(AsyncCallback<List<Segnalazione>> callback);



}

package com.tesi.server;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import com.google.gwt.user.server.rpc.RemoteServiceServlet;
import com.tesi.client.DataLayerService;
import com.tesi.client.Segnalazione;

public class DataLayerServiceImpl extends RemoteServiceServlet implements
    DataLayerService {

@Override
public List<Segnalazione> getListaSegnalazioniAttivePerMappa() {
    // TODO Auto-generated method stub
    List<Segnalazione> listaSegnalazioniAttive= new ArrayList<Segnalazione>();
    try {
        Connection con = ConnectionPool.getInstance().getConnection();
        Statement stmt = con.createStatement();
        ResultSet segnalazioniAttive = stmt
                .executeQuery("SELECT * FROM SEGNALAZIONI_ATTIVE");
        while(segnalazioniAttive.next()) {

            //popolo gli oggetti segnalazione
            Segnalazione s = new Segnalazione();
            s.setCategoria(segnalazioniAttive.getString("categoria"));
            s.setData(segnalazioniAttive.getDate("data"));
            s.setDescrizione(segnalazioniAttive.getString("descrizione"));
            s.setIndirizzo(segnalazioniAttive.getString("indirizzo"));
            s.setNum_civico(segnalazioniAttive.getInt("numero_civico"));

            listaSegnalazioniAttive.add(s);
        }
    } catch (Exception ex) {

    }
    return listaSegnalazioniAttive;
}

}

这就是我修改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>greetServlet</servlet-name>
    <servlet-class>com.tesi.server.GreetingServiceImpl</servlet-class>
  </servlet>

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

  <servlet>
    <servlet-name>dataLayerServlet</servlet-name>
    <servlet-class>com.tesi.server.DataLayerServiceImpl</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>dataLayerServlet</servlet-name>
    <url-pattern>/segnalazioni_degrado/dataLayer</url-pattern>
  </servlet-mapping>


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

</web-app>

您是否有任何线索如何解决?

2 个答案:

答案 0 :(得分:3)

对不起大家,这是一个愚蠢的错误。 我只需要从web.xml中删除GreetServlet,因为这只是一个示例servlet。

无论如何,谢谢你。

答案 1 :(得分:0)

尝试更改此

  

@RemoteServiceRelativePath( “数据层”)

进入这个

  

@RemoteServiceRelativePath( “/ segnalazioni_degrado /数据层”)

如果这不起作用,请发布服务器错误日志