狼爱上狸

我胡汉三又回来了

也谈GT4下Math的调试

走了很多弯路,参考了很多文献,才把这个Math调试完毕。顺便记下,供需要的人参考。

一.软件
操作系统:Vista Ultimate

JDK: C:\Java\jdk1.5.0_03  http://java.sun.com/javase/downloads/index_jdk5.jsp

Axis: C:\axis14   Axis下载:http://archive.apache.org/dist/ws/axis/

Ant: C:\ant170   Ant下载:http://www.apache.org/dist/ant/binaries/

Tomcat : C:\Tomcat5 版本是5.0.28  Tomcat下载:http://tomcat.apache.org/

Python: C:\Python24

axis需要的jar文件下载:

 activation.jar下载:http://java.sun.com/products/javabeans/glasgow/jaf.html

 Javamail.jar下载:http://java.sun.com/products/javamail/

 Xmlsec.jar下载:http://xml.apache.org/security/



二.环境设置:
ANT_HOME=C:\ant170

AXIS_HOME=%CATALINA_HOME%\webapps\axis

AXIS_LIB=C:\jdbc\axis_lib

AXISCLASSPATH=%AXIS_LIB%\axis.jar;%AXIS_LIB%\axis.jar;%AXIS_LIB%\commons-discovery-0.2.jar;%AXIS_LIB%\commons-logging-1.0.4.jar;%AXIS_LIB%\jaxrpc.jar;%AXIS_LIB%\saaj.jar;%AXIS_LIB%\log4j-1.2.8.jar;%AXIS_LIB%\xml-apis.jar;%AXIS_LIB%\xercesImpl.jar;%AXIS_LIB%\xalan.jar;%AXIS_LIB%\xmlsec-1.4.1.jar;%AXIS_LIB%\activation.jar;%AXIS_LIB%\mail.jar;

CATALINA_HOME=C:\Tomcat5

classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;DBCLASSPATH;AXISCLASSPATH

DB_LIB=C:\jdbc\db_lib

DBCLASSPATH=%DB_LIB%\jconn2.jar;

GLOBUS_LOCATION=C:\globus

JAVA_HOME=C:\Java\jdk1.5.0_03

Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%JAVA_HOME%\bin;%ANT_HOME%\bin;%GLOBUS_LOCATION%\bin;%CATALINA_HOME%\bin;

三.安装

1.jdk安装

2.tomcat安装

3.axis安装

4.globus4安装

四.调试

1.调试好jdk

2.调试好tomcat

3.调试好axis

4.调试好globus

五math的调试

math下载地址:http://gdp.globus.org/gt4-tutorial/download/progtutorial-examples_0.2.1.tar.gz

MathQNames.java/MathService.java下载:http://www.blogjava.net/Files/waterjava/globus_Math.rar

这部分参考了网上文献,红色部分是自己加上的:
step1  
1 建wsdl文件
即C:\globus\schema\examples\MathService_instance\Math.wsdl
内容就直接从tutorial上拷.
2 建c:\globus\namespace2package.mappings
    手册上是说的namespace2package..properties文件,但每次在编译的时侯,都是映射后的命名空间找不着,改成.mappings就OK了.这里注意每条记录只能占一行,而且"http\://"那一"\"不能乱删.
step2 写服务实现类
1 MathQNames.java
内容从手册上拷,文件建在C:\globus\org\globus\examples\services\core\first\impl\MathQNames.java处.
2 MathService.java
内容从手册上拷,文件建在C:\globus\org\globus\examples\services\core\first\impl\MathService.java处.
step3 建WSDD和JNDI部署文件
1 C:/globus/org/globus/examples/services/core/first/deploy-server.wsdd;
2 C:/globus/org/globus/examples/services/core/first/deploy-jndi-config.xml;
step4 生成gar文件
1 将下载的globus-build-service-gt4_0.2.5里面几个文件(globus-build-service.py和build.xml)先拷贝到C:\globus下
2 在C:\globus下运行命令:
globus-build-service.py -d org/globus/examples/services/core/first/ -s schema/examples/MathService_instance/Math.wsdl
如果不成功,估计要先运行d:\ws\etc\globus-devel-env.bat;
成功的话,生成d:\gt4\org_globus_examples_services_core_first.gar
step 5 部署
1 C:\globus下运行:
globus-deploy-gar c:/globus/org_globus_examples_services_core_first.gar
2 关掉tomcat

3 运行globus-start-container -nosec
如果看到你自己的MathServices服务,就说明成功了.

这样你不能通过IE看你的服务,如果要的话,我们可以把他发布到tomcat里面去,你得装Tomcat,然后用以下明明发布到tomcat里面去,ant -f share/globus_wsrf_common/tomcat/tomcat.xml deploySecureTomcat -Dtomcat.dir="C:\Tomcat5"(最后那个目录为你的tomcat的目录)
(注意)重新启动tomcat,输入http://localhost:8080/wsrf/services你就可以看到你服务了!

客户端的开发,有一个问题要注意
System.out.println("Current value:" + math.getValue(new GetValueRP()));
math.getValue修改为math.getValueRP,估计这是作者笔误.
然后是客户端编译命令:
javac -classpath ./build/stubs/classes/;%CLASSPATH% org/globus/examples/clients/MathService_instance/Client.java

如果出现:软件包org.apache.axis.message.addressing不存在;要先运行C:\globus\etc\globus-devel-env.bat;

最后运行检验:
java -classpath ./build/stubs/classes/;%CLASSPATH% org.globus.examples.clients.MathService_instance.Client http://127.0.0.1:8080/wsrf/services/examples/core/first/MathService
出现期望的数字就说明成功了.
可以看到,用了globus-build-service-gt4_0.2.5,执行步骤要比以前少很多.另外,WSDL文件个人认为也可以用Java2WSDL生成,但没有做尝试.\
ps:上传了整个d:/gt4目录.补充一点, 要运行globus-build-service.py需要python环境支持.


posted on 2007-07-12 14:03 狼爱上狸 阅读(1986) 评论(8)  编辑  收藏 所属分类: Globus

评论

# re: 也谈GT4下Math的调试 2007-08-06 21:01 liweigu

用Java2WSDL生成的好像不一样,生成portType好像是单独的文件,wsdl的命名空间好像也不一样。  回复  更多评论   

# re: 也谈GT4下Math的调试 2008-04-13 16:55 mxj

编译客户端出现错误:
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/toos/javac/main
是什么错误啊?希望能够帮忙解答一下!谢谢!非常感谢!   回复  更多评论   

# re: 也谈GT4下Math的调试 2008-06-02 22:26 geomantic

我也遇到这个问题了,应该是类的问题
但不知道差在哪里  回复  更多评论   

# re: 也谈GT4下Math的调试 2008-06-02 22:59 geomantic

Exception in thread "main" java.lang.NoClassDefFoundError  回复  更多评论   

# re: 也谈GT4下Math的调试 2008-06-03 00:33 geomantic

问题解决了
重新写一遍.java文件,弄仔细就ok了。  回复  更多评论   

# re: 也谈GT4下Math的调试 2008-06-04 10:45 just me

step 5 部署
这一步就是不成功,前面的都可以的,Python我是配置好的。  回复  更多评论   

# re: 也谈GT4下Math的调试[未登录] 2009-12-31 08:27 sunny

thank you very much  回复  更多评论   

# re: 也谈GT4下Math的调试[未登录] 2012-05-07 21:16 杨光

先运行C:\globus\etc\globus-devel-env.bat;结果同样失败了。  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航: