快速业务通道

Eclipse RCP+Spring建胖客户端Web程序 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-21
这样做,你就可以确保,当你创建对SpringClient的一种工作依赖性时,spring和log jars也是可用的。此后,点击OK。

Eclipse RCP+Spring建胖客户端Web程序 - 编程入门网

图9.输出第三方库

4. 现在,你要修改SpringClient的manifest。在包资源管理器中,展开SpringClient->META-INF并且打开MANIFEST.MF。点击"Runtime"选项卡并且点击Classpath部分的"Add"。全选Spring jars和logging jars并且点击OK。现在,在"Exported Packages"节中,点击Add。选择所有的包以便导出,并点击OK(见图10)。

Eclipse RCP+Spring建胖客户端Web程序 - 编程入门网

图10.把第三方库添加到插件Classpath并导出包

我以前提及过,Eclipse的classloader经常引起问题。为了补救这一点,你可以点击MANIFEST.MF选项卡并且添加下面一行:

Eclipse-BuddyPolicy: registered

Eclipse RCP+Spring建胖客户端Web程序(5)

时间:2011-01-03 天极 朱先忠

5. 现在,让我们添加spring配置文件。在Package Explorer中,转到src目录,创建一个新文件applicationContext.xml,并且加入下列内容:

Eclipse RCP+Spring建胖客户端Web程序 - 编程入门网

在src目录下,另外创建一个新文件beanRefFactory.xml并且加入下列内容:

Eclipse RCP+Spring建胖客户端Web程序 - 编程入门网

不必感到惊讶,这些配置文件与你对stocktradeserver工程进行单元测试时使用的spring配置文件是相同的,除了你重命名了applicationContext.xml以外。

6. 为了简化问题,你可以把类从stocktradeserver工程复制到SpringClient的src目录下。在SpringClient的src目录下面,创建包stephenlum.services.stock和stephenlum.services.stock.dto。

如果你还没有准备好,你可以下载本文源码或参考我的前一篇文章并且复制stephenlum.services.stock下的类StockService.java。然后,复制在stephenlum.services.stock.dto下的类StockDTO.java(见图11)。

Eclipse RCP+Spring建胖客户端Web程序 - 编程入门网

图11.完成上面操作后的Package Explorer看上去的样子

Eclipse RCP+Spring建胖客户端Web程序(6)

时间:2011-01-03 天极 朱先忠

7. 把代码添加到类SpringClientPlugin以装载Spring的应用程序上下文。注意,你要把该代码添加到构造器中。下面是新的SpringClientPlugin类:

package springClient; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.ui.plugin.AbstractUIPlugin; import org.osgi.framework.BundleContext; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.access.BeanFactoryLocator; import org.springframework.beans.factory.access.BeanFactoryReference; import org.springframework.beans.factory.access.SingletonBeanFactoryLocator; /** *应用于桌面的主插件类。 */ public class SpringClientPlugin extends AbstractUIPlugin {   private BeanFactory beanFactory;   //共享实例.   private static SpringClientPlugin plugin;   /**   *构造器.   */   public SpringClientPlugin() {    plugin = this;    BeanFactoryLocator beanFactoryLocator = SingletonBeanFactoryLocator.getInstance();    BeanFactoryReference beanFactoryReference = beanFactoryLocator.useBeanFactory("ctx");    beanFactory = beanFactoryReference.getFactory();   }   /**   *在插件激活时调用这个方法   */   public void start(BundleContext context) throws Exception {    super.start(context);   }   /**   *当停止插件时,调用这个方法   */   public void stop(BundleContext context) throws Exception {    super.stop(context);    plugin = null;   }   /**   *返回共享实例.   */   public static SpringClientPlugin getDefault() {    return plugin;   }   /**   *返回在

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号