|
ygogogof :
一个关于MapXtremeServlet异地部署的问题
自己用MapXtreme for Java4.5编写的serlvet在一台机器A上的tomcat中运行,地图应用服务器部署在局域网上的另一台机器B上。在自己编写的servlet中应该做哪些设置啊!两个位于同一机器上时,servlet能运行,分离后,我把程序中的mapxtremeurl的值改成了另一台机器的 http://B:8080/mapxtreme45/serlvet/mapxtreme。可是发现运行不起来,但通过ethereal局域网抓包分析,发现AB确实有交互。请问哪位高手解决过这样的问题!自己编写的servlet中的相关参数该如何配置?
James.Liu :
你的配法原则上没有什么问题,
把
http://B:8080/mapxtreme45/serlvet/mapxtreme
改成
http://B:8080/mapxtreme45/servlet/mapxtreme?拭拭看
ygogogof :
我就是把mapxtremeurl设成了,运行mapxtremeservlet的那台机器地址 http://B:8080/mapxtreme45/servlet/mapxtreme。但不行,另外问一下mappath和filetoload这两个参数怎么设置啊?
wtusmchen :
注意一下地图和mdf的关系,mdf搁在A上,地图搁在B上,但mdf里的tab路径指向是B里面的地图路径。比如test.tab放在B机器?/usr/map/test.tab?,则A机器上的mdf里面的文件路径是/usr/map/test.tab
ygogogof :
经过楼上大虾的提点,本人终于搞定了!现将方法总结如下,希望能够帮到其他人!就是将mdf文件和编写的servlet放在A机器上,mapxtremeservlet运行在B机器上。设置参数时,只要将mapxtremeurl设为 http://B:8080/mapxtreme45/servlet/mapxtreme,filetoload设置成A机器上mdf文件的绝对路径。需要注意的是mdf文件里面描述的tab文件的绝对路径,必须和B机器上实际存放tab文件的路径相符合!这样就OK了!有时使用mapxtreme自带的mdf文件可能会有问题,最好自己用地图定义工具自己重新做一个mdf文件。 |