この演習では,JavaアプリケーションからのWebサービス呼び出しを実践します.
Javaアプリケーションからのサービス呼び出しを行う手順を以下に示します. Webサービス基礎1と同様,機械翻訳WebサービスのJ-Serverを使用します.
| Sample File: stub.bat |
|---|
set LIB=./lib set AXIS_CLASSPATH=%LIB%/axis.jar set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/jaxrpc.jar set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/commons-logging-1.0.4.jar set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/commons-discovery-0.2.jar set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/saaj.jar set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/wsdl4j-1.5.1.jar set CLASSPATH=%AXIS_CLASSPATH%;. java -cp %CLASSPATH% org.apache.axis.wsdl.WSDL2Java KyotoUJServer.wsdl |

| Sample File: Test.java |
|---|
import java.net.URL;
import org.apache.axis.client.Stub;
import Translation.nlp.nict.servicetype.KyotouLangridKyotoUJServerLocator;
import Translation.nlp.nict.servicetype.TranslationService;
public class Test{
public static void main(String[] args) throws Exception{
// Translation
KyotouLangridKyotoUJServerLocator jserverLoc =
new KyotouLangridKyotoUJServerLocator();
TranslationService transService = jserverLoc.getTranslation(
new URL("Input endpoint URL"));
Stub stub = (Stub)transService;
stub.setUsername("Your temporary ID or Language Grid ID");
stub.setPassword("Your temporary password or Language Grid password");
String ret = transService.translate("en", "ja", "Hello.");
System.out.println(ret);
}
} |
| Sample File: run.bat |
|---|
set LIB=./lib
set AXIS_CLASSPATH=%LIB%/axis.jar
set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/jaxrpc.jar
set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/commons-logging-1.0.4.jar
set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/commons-discovery-0.2.jar
set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/saaj.jar
set AXIS_CLASSPATH=%AXIS_CLASSPATH%;%LIB%/wsdl4j-1.5.1.jar
set CLASSPATH=%AXIS_CLASSPATH%;.
javac -encoding UTF-8 -cp %CLASSPATH% Test.java
java -Dhttp.proxyHost=YourProxy
-Dhttp.proxyPort=YourProxyPort
-Dhttp.nonproxyHost=localhost
-cp %CLASSPATH% Test > output.txt
pause
|
上記のステップに従って,J-Server以外のWebサービスも呼び出してみましょう.この演習では以下のサービスが使用できます.