论坛首页 Java版 SOA

(请教)axis发布webservice失败

浏览 1383 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
时间:2007-07-24
jdk: 1.4.2_12
tomcat:5.028
axis:1.4

deploy.wsdd
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
            xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">

 <service name="AdminOrgService" provider="java:RPC">
  <parameter name="className" value="com.admin.webservices.AdminOrgService"/>
  <parameter name="scope" value="Application"/>
  <parameter name="allowedMethods" value="*"/>
 </service>

</deployment>

deploy.bat
java -classpath ".\WEB-INF\lib\axis.jar";".\WEB-INF\lib\commons-logging-1.0.4.jar";".\WEB-INF\lib\commons-discovery-0.2.jar";".\WEB-INF\lib\wsdl4j-1.5.1.jar";".\WEB-INF\lib\saaj.jar";".\WEB-INF\lib\mail-1.0.jar";".\WEB-INF\lib\log4j-1.2.8.jar";".\WEB-INF\lib\jaxrpc.jar";".\WEB-INF\lib\axis-ant.jar";".\WEB-INF\lib\activation-1.0.jar"; org.apache.axis.client.AdminClient deploy.wsdd -lhttp://localhost/admin/servlet/AxisServlet

AdminOrgService.java
package com.admin.webservices;


public class AdminOrgService {
	public void sayHello() {
		Sysetm.out.println("hello");
	}
}



错误信息:
Processing file deploy.wsdd
Exception: AxisFault
 faultCode: {http://xml.apache.org/axis/}Server.NoService
 faultSubcode:
 faultString: The AXIS engine could not find a target service to invoke!  targetService is null
 faultActor:
 faultNode:
 faultDetail:
        {http://xml.apache.org/axis/}hostname:tjmdcl-hanxr
   
时间:2007-07-24
可能是测试的client设置有问题

Service service = new Service();
URL url2 = new URL("http://localhost:8080/services/AdminOrgService");
Call call2 = (Call) service.createCall();
call2.setTargetEndpointAddress(url2);
call2.setOperationName(new QName("http://localhost","sayHello"));
////////////////设置传参、返回参数类型////////////////////////
call2.addParameter( "arg1", XMLType.XSD_STRING, ParameterMode.IN); //spid
///////////////调用方法////////////////////////
Object sms[]=new Object[]{"test"};
call2.invoke(sms));
   
0 请登录后投票
时间:2007-07-24
谢谢,我是在发布的时候遇到的这个问题,不是调用的时候
   
0 请登录后投票
时间:2007-07-24
已经解决了,不过让我郁闷的是,不知道问题出在哪,好像是web.xml配置的问题.不过不是很确定
   
0 请登录后投票
时间:2007-07-25
不知道axis如何返回复杂对象:
比如我要返回一个组织类,组织类中有个List用来存放所有的子组织,
类似:
public class OrgBean{
  private String orgName;
  ...
  private List subOrgs;
  public void setSubOrgs(List par){
       subOrgs = par;
  }
  public List getSubOrgs(){
     return subOrgs;
  }
}

上面的services类变为:
package com.admin.webservices;   
  
public class AdminOrgService {  
 //简单说明 
    public OrgBean getOrgBean() {   
        return new OrgBean();   
    }   
}   

不知道是否有人遇到过这种情况
   
0 请登录后投票
时间:2007-08-06
给我个例子。。。
   
0 请登录后投票
论坛首页 Java版 SOA

跳转论坛:
JavaEye推荐