<!-- --><!-- --> <!-- -->
任务描述:
在技术检证Sample上加一个WebService,并且编写一个Java程序用以调用这个WebService。WebService的功能是给每个Employee发一个邮件。(给Employee表加一个邮件地址的字段,可以使用公司内部的SMTP服务)
思路:先调查 IM 中发信功能
入手:看 API 。
自己写了个 main 方法类型的测试方法,但一直报错:配置文件没有找到。
-》看到“一直”一词,想起以前出现错误时,自己的表现有点手足无措,此处给自己一个告诫:遇到错误时,不要单单一遍又一遍地跑错误(在那边抱怨出现了这个错误),更要根据错误提示信息去寻找和尝试问题的解决办法。(20090519追加)
在 imart.xml 配置文件中, email 配置没找到,可以考虑搜 smtp 配置项。
-》有关邮件的配置项信息,肯定是跟邮件这个单词相关的,无非就是email或者邮件协议之类的。总之,脑袋瓜要灵活些。(20090519追加)
高手提点:不应该在自己单独写的 main 中跑,而该在 IM 容器中运行,那样才能读到配置信息。
-》是啊,你想使用配置信息(邮件协议设置,不是单纯的那种配置文件的属性值读取),在自己单独写的main方法中,又怎么能做到这一点呢?这边,不得不自我批评一下,有时,真的感觉自己没什么清晰的思路,思维比较混乱:(。(20090519追加)
高手找到的例子程序:
http://www.intra-mart.jp/apilist/v60/j2ee_base/logic/mail_module.html
配置 smtp 配置项后,在 Jsp 页面发送写死的电子邮件地址,实现了发信,验证了应该在 IM 容器中运行例子程序的道理。
-》高手就是高手,思路清晰,实践能力也强。(20090519追加)
从数据库中取出一系列的地址在 jsp 页面上发,未实现;
在 BL 层的类中写个方法,将从数据库中拿到的会员数组传进去,取每个 Email 地址来发邮件,实现。
备注: Ebuilder 可以对 jsp 页面进行 debug ,尽管看不到对象的值,但是最起码,可以看流程,可以用于调试。
在 IM例子程序 Employee中加 发 送 邮 件的功能,使用的是 IM自身提供的 API,主要是以下三个 类 :
现 在已 经实现 :在 BL层 的 类 中添加了一个 发邮 件的方法, 进 行用 户 一 览显 示操 作的同 时隐 式地 调 用了 这 个方法,向各个 employee发 送了 邮 件。 现 在正在 调查 如何将其做成 web service。 |
配置 webservice 时遇到一个问题:按照手顺做的,但是 service 并没有公布出来。 L
高手调查:最终发现是包名的问题:我写的实例 Java 文件是放在包中的,尽管配置时我是放在 classes 目录下,但是它终究还是处于包下的。
解决方案:配置时,将这个 class 文件放到 classes 目录的对应子目录下去(完整的包名),同时,在配置文件中进行配置的时候,将这个完整的包名也要写上,这样才能找到对应的文件。
再访问 servicelist 一览,刚加的那个服务显示出来了。
教训:放到包下的类,访问的时候也要设置包名!切记!
-》关于含包名访问的问题,是J2SE中的内容。这个问题,也暴露出自己基础不扎实的缺点。(20090519追加)
明天,继续调查websservice,将发邮件的功能做成websservice发布出来。