我是web服務和glassfish的新手。這裏是我的代碼Glassfish 4.0加載應用程序時出現異常java.lang.IllegalStateException
package ws.mypkg;
import java.util.ArrayList;
import java.util.List;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPBinding.Style;
@WebService
@SOAPBinding(style=Style.RPC)
public class TestRPC {
// This seems to cause the problem when a List is returned.
public List<String> testRPC() {
List<String> l = new ArrayList<String>();
l.add("Hello");
return l;
}
// This method work fine
public String testRPC1() {
return "Testing RPC";
}
}
如果我有
@SOAPBinding(style=Style.RPC)
我收到以下錯誤,當我嘗試部署Web服務。
不能部署TestGF部署失敗=部署過程中出現錯誤:異常 同時加載應用程序:java.lang.IllegalStateException:ContainerBase.addChild:啓動: org.apache.catalina.LifecycleException:java.lang中。 RuntimeException:Servlet Web服務 端點'失敗。有關更多詳細信息,請參閱server.log。
服務器日誌沒有更多。
當我註釋掉@SOAPBinding(style=Style.RPC)
的問題似乎是與第一種方法它可以部署的罰款。如果我排除第一種方法,則第二種方法可以很好地部署。看來,當我從方法返回一個列表,我有@SOAPBinding(style=Style.RPC)
我使用Glassfish的4.0好像我有這個問題,JDK 1.7和Eclipse(捆綁與Spring 3.4)
感謝。我將列表更改爲ArrayList。它部署OK。但是當我運行時,響應似乎返回一個空對象。我看到的全是 。但是,如果我拿走RPC風格,我會看到返回的列表爲你好 –
user2125853