osgi学习笔记(三)

OSGI实战书上讲了一个web登陆验证切换功能。表达了osgi的一些用途。

照着弄了哈。开发环境:

eclipse-jee-indigo-win32

共四个项目:

webosgi,UserValidator,LDAPValidator,DBValidator

在eclipse里面启动项目:


osgi学习笔记(三)_第1张图片

勾上4个项目,Deselect All,然后勾上以下服务:

 

 
osgi学习笔记(三)_第2张图片

 

run,效果如下:

 

 
osgi学习笔记(三)_第3张图片
 访问地址:http://localhost/webosgi/login.action后得到如下结果:

 osgi> LDAPValidatorImpl.validate()

如果你想切换成DBValidator的实现,使用命令:

osgi> stop 52

58已经启动,如果没启动,执行命令:osgi> start 58

在访问   http://localhost/webosgi/login.action后得到:

 osgi> DBValidatorImpl.validate()

如果你想在eclipse之外运行该列子,手动制作启动程序。不外乎就是把eclipse里面用的jar弄出来。随便取个名字osgi_service。

把项目导出来。Export-->Plug-in Development-->Deployable plug-ins and fragments

 
osgi学习笔记(三)_第4张图片

 启动  osgi_service,如图:

 
osgi学习笔记(三)_第5张图片

 在激活服务:

osgi> start 10 11 12 13

osgi> ss

Framework is launched.

id State Bundle
0 ACTIVE org.eclipse.osgi_3.7.0.v20110613
1 ACTIVE org.eclipse.osgi.services_3.3.0.v20110513
2 ACTIVE javax.servlet_2.5.0.v201103041518
3 ACTIVE org.mortbay.jetty.server_6.1.23.v201012071420
4 ACTIVE org.eclipse.equinox.common_3.6.0.v20110523
5 ACTIVE org.mortbay.jetty.util_6.1.23.v201012071420
6 ACTIVE org.eclipse.equinox.http.servlet_1.1.200.v20110502
7 ACTIVE org.eclipse.equinox.registry_3.5.100.v20110502
8 ACTIVE org.eclipse.equinox.http.jetty_2.0.100.v20110502
9 ACTIVE org.eclipse.equinox.http.registry_1.1.100.v20110502
10 ACTIVE webosgi_1.0.0
11 ACTIVE UserValidator_1.0.0
12 ACTIVE LDAPValidator_1.0.0
13 ACTIVE DBValidator_1.0.0

 

访问试试:http://localhost:8080/webosgi/login.action

http://localhost:8080/webosgi/page/index.html

 

 

你可能感兴趣的:(java,eclipse,osgi)