【案例32】系统无法创建SOAP连接器

问题现象 

在部署EJB时报如下错误。

系统无法创建SOAP连接器以连接到端口8879上的主机localhost。

问题分析

正常这种情况是Dmgr和Nodeagent相关服务出现异常或者没有启动造成的。

如果有如下报错,则可能是配置了安全性导致的。

Exception creating admin client
com.ibm.websphere.management.exception.ConnectorException: ADMC0016E: 系统无法创建 SOAP 连接器以连接到端口 8879 上的主机 localhost。
	at com.ibm.websphere.management.AdminClientFactory.createAdminClientPrivileged(AdminClientFactory.java:635)
	at com.ibm.websphere.management.AdminClientFactory.access$000(AdminClientFactory.java:127)
	at com.ibm.websphere.management.AdminClientFactory$1.run(AdminClientFactory.java:210)
	at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:63)
	at com.ibm.websphere.management.AdminClientFactory.createAdminClient(AdminClientFactory.java:206)
	at nc.bs.framework.was.admin.AdminUtils.newAdminClient(AdminUtils.java:111)
	at nc.bs.framework.was.admin.WasSetup.init(WasSetup.java:62)
	at nc.bs.framework.was.admin.WasSetupStarter.main(WasSetupStarter.java:152)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
	at java.lang.reflect.Method.invoke(Method.java:508)
	at nc.bs.framework.tool.config.util.impl.WasUtils.invokeStarterMain(WasUtils.java:367)
	at nc.bs.framework.tool.config.cluster.was.WasClusterConfigPanel.readWasServers(WasClusterConfigPanel.java:150)
	at nc.bs.framework.tool.config.cluster.was.WasClusterConfigPanel.access$200(WasClusterConfigPanel.java:22)
	at nc.bs.framework.tool.config.cluster.was.WasClusterConfigPanel$1.run(WasClusterConfigPanel.java:125)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:83)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:57)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:437)
	at com.ibm.websphere.management.AdminClientFactory.createAdminClientPrivileged(AdminClientFactory.java:457)
	... 15 more

解决方案

1、检查/etc/hosts文件是否添加主机名和IP。

2、重启Dmgr和Nodeagent。

3、检查WebSphere是否配置了安全性。把相关安全性进行勾掉。重启Dmgr。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Java中创建SOAP Web服务,您可以遵循以下步骤: 1. 首先,确保您已安装Java Development Kit(JDK)。 2. 创建一个Java项目,并在项目中添加所需的库和依赖项。您可以使用Apache CXF、Axis2或JAX-WS(Java API for XML Web Services)等框架来构建SOAP Web服务。 3. 定义您的Web服务接口。这是您的服务将提供的方法的集合。使用Java注解(如@WebService和@WebMethod)来标记接口和方法。 4. 实现您的Web服务接口。编写代码来实现接口中定义的方法。 5. 使用您选择的SOAP框架(如CXF或Axis2)来发布您的Web服务。这将生成所需的WSDL(Web Services Description Language)文件,以描述您的服务。 6. 部署并运行您的Web服务。根据您选择的框架,可能需要将生成的文件部署到应用服务器(如Tomcat或JBoss)中。 下面是一个简单的示例,演示如何使用JAX-WS来创建一个SOAP Web服务: ```java import javax.jws.WebMethod; import javax.jws.WebService; @WebService public class HelloWorld { @WebMethod public String sayHello(String name) { return "Hello, " + name + "!"; } } ``` ```java import javax.xml.ws.Endpoint; public class HelloWorldPublisher { public static void main(String[] args) { HelloWorld helloWorld = new HelloWorld(); String url = "http://localhost:8080/hello"; Endpoint.publish(url, helloWorld); System.out.println("Web service published at: " + url); } } ``` 这是一个简单的示例,定义了一个叫做`HelloWorld`的Web服务,其中有一个`sayHello`方法。`HelloWorldPublisher`类用于发布该服务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值