我是网络服务和玻璃鱼的新手。这是我的代码
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服务终结点“”失败。请参阅服务器。日志以获取更多详细信息。
服务器日志没有更多内容。
当我注释掉< code>@SOAPBinding(style=Style。RPC)
问题似乎出在第一种方法上。如果我排除第一种方法,第二种方法部署正常。当我从该方法返回列表并且我有@SOAPBinding(style=Style.RPC)
时,似乎我遇到了这个问题
我正在使用Glassfish 4.0、jdk 1.7和Eclipse(与Spring 3.4捆绑在一起)
问题是您的方法返回类型是一个接口,而< code>JAXB不能使用接口,因为它不知道使用哪个< code>List实现。
要修复它,只需将方法的返回类型更改为ArrayList
,如下所示:
public ArrayList<String> testRPC () {
ArrayList<String> l = new ArrayList<String>();
l.add("Hello");
return l;
}
正如错误消息所暗示的那样,可以在服务器.log
中找到更多信息。应该有这样的内容:
Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
java.util.List is an interface, and JAXB can't handle interfaces
this problem is related to the following location:
at java.util.List
如果发生类似的错误,这将为您指出正确的方向。
另请参见:
严重:加载应用程序信息时出现异常:file:/c:/users/administrateur/documents/netbeansprojects/gparc_v1.0/gparc-ear/target/gfdeploy/gparc-ear/gparc-ejb-1.0_jar/_gparc-ejbpu注销成功信息:[7]已删除ID为98894641828724736的计时器 严重:加载应用程序时出
main.java controller.java FXMLView.java
当运行我的Spring启动应用程序时,启动时低于异常。不确定是什么依赖导致了这一点。 Spring启动版本-2.3.1 IDE-Intellij 这是一个多模块maven项目。如果需要其他信息,请告诉我。 下面是我的父母pom.xml 4.0.0
我有一个ejb文件,其中包含一些文件和一个消息驱动bean。 对如何解决这个问题有什么想法吗? 此处的Glassfish服务器错误http://pastebin.com/hkyrfnwe
我的springboot应用程序中有以下代码 当我运行启动应用程序时,我得到以下异常! org.springframework.beans.factory.BeanCreationException:创建类路径资源[com/mitchell/csg/acsstateFarMediBundler/fileshandler/fileMonitorBeanRegistry.class]中定义的名为“am
login.fxml: 它是在Eclipse中使用JRE 1.8.0而不是IntelliJ思想 这是一个错误: