WEB开发网
开发学院软件开发Java 使用 Apache Geronimo 将 Apache Axis 应用程序移... 阅读

使用 Apache Geronimo 将 Apache Axis 应用程序移植到 Axis2

 2010-03-19 00:00:00 来源:WEB开发网   
核心提示: 在 Axis 中,AskPortBindingImpl.java 文件是实现 Web 服务的地方,使用 Apache Geronimo 将 Apache Axis 应用程序移植到 Axis2(5),请在 ./com/example/www/ask/AskPortBindingImpl.java

在 Axis 中,AskPortBindingImpl.java 文件是实现 Web 服务的地方。请在 ./com/example/www/ask/AskPortBindingImpl.java 中查找并定义它,如 清单 2 所示。

清单 2. 在 Axis 中处理 Ask 操作

package com.example.www.ask; 
 
public class AskPortBindingImpl implements 
       com.example.www.ask.AskPortType{ 
  public java.lang.String ask(java.lang.String question) 
      throws java.rmi.RemoteException { 
    System.out.println("QUESTION ASKED: " + question); 
    return "Why ask me, Georgy, I don't know anything!!!"; 
  } 
} 

该类包含在 ask.wsdl 文件中定义的单个 Ask 操作,它接受问题 String,并返回回答 String。接下来需要定义与 Axis Web 服务通信的客户机存根。

Java 客户机

在此,需要用 Java 语言定义与 Axis Web 服务通信的命令行客户机。在 AskPortBindingImpl.java 文件所在的目录中定义文件 AskServiceTestCase.java,如 清单 3 所示。

清单 3. Axis 客户机存根

package com.example.www.ask; 
 
public class AskServiceTestCase { 
 
  public static void main(String args[]) throws Exception { 
    com.example.www.ask.AskPortBindingStub binding = null; 
    try { 
      binding = (com.example.www.ask.AskPortBindingStub) 
             new com.example.www.ask. 
                 AskServiceLocator().getAskPort(); 
    } 
    catch (Exception e) { 
      e.printStackTrace(); 
    } 
 
    // Test operation 
    java.lang.String answer = null; 
    answer = binding.ask(new java.lang.String("I have a hole in"+ 
        " my bucket, dear Liza, with what should I fix it?")); 
  System.out.println("ANSWER RECEIVED: " + answer); 
  } 
 
} 

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:使用 Apache Geronimo

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接