基于OSGi的Virgo Server最简单Spring web实例

简介: 基于OSGi的Virgo Server最简单Spring web实例

基于OSGi的Virgo Server最简单Spring web实例


一:开发工具下载与环境搭建


1.       下载并安装JDK6u30版本,下载地址如下:


http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downlo


ads-javase6-419409.html#jdk-6u30-oth-JPR


2.       下载并安装SpringsourceTools Suite开发IDE工具版本为2.7.2.RELEASE,下载地址:


http://download.springsource.com/release/STS/2.7.2/dist/e3.7/springsource-tool-suite-


2.7.2.RELEASE-e3.7-win32-installer.exe


3.       下载并安装VirgoServer版本为3.0.2,下载地址为:


http://www.eclipse.org/downloads/download.php?file=/virgo/release/VTS/3.0.2.RE


LEASE/virgo-tomcat-server-3.0.2.RELEASE.zip


4.      下载并安装Maven工具版本为3.03, 下载地址:


http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-3.0.3-bin.zip.


5.       打开安装好的STS(SpringSource Tools Suite)工具,Menu > Help > Install New


Software > http://subclipse.tigris.org/update_1.6.x 更新安装Virgo Server插件



二:创建WebBundle项目


将VirgoServer与maven分别解压缩到D:\osgi\project\virgo_tomcat与D:\osgi\project\maven


1.       打开STS(SpringSourceTools Suite), 选择Menu->Window->Preferences->Maven->


         Installations

1339747404_7221.png


2. 根据Wizard创建一个Mavenbundle project,在选择时候选择webapp就可以成为一个web bundle项目:

1339747497_4705.png

右键选择创建好的项目,在弹出菜单中选择SpringTools -> enable OSGi


然后再次选择SpringTools -> enable incremental generation of MANIFEST.MF file


3. 启动与访问virgoserver的splash页面


在serverview中右键选择New->server,弹出如下画面:

1339747592_5916.png


选择VirgoWeb Server点击【add】按钮以后

1339747625_7254.png


点击【finish】结束配置,点击ServerView中的启动按钮,启动VirgoServer以后


在浏览器输入http://localhost:8080即可看到如下画面

1339747668_5431.png


4.  项目布局如下:

1339747755_5442.png


5.  Web.xml内容

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >
 
<web-app>
  <display-name>Archetype Created Web Application</display-name>
  <context-param>
    <param-name>contextClass</param-name>
    <param-value>
      org.eclipse.virgo.web.dm.ServerOsgiBundleXmlWebApplicationContext
    </param-value>
  </context-param>
  <listener>
    <listener-class>
      org.springframework.web.context.ContextLoaderListener
    </listener-class>
  </listener>
  <servlet>
    <servlet-name>gloomyfish</servlet-name>
    <servlet-class>
      org.springframework.web.servlet.DispatcherServlet
    </servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>gloomyfish</servlet-name>
    <url-pattern>/app/*</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
        <welcome-file>Hello.jsp</welcome-file>
    </welcome-file-list>
</web-app>

6. gloomyfish-servlet.xml内容

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
 
<context:component-scan base-package="com.gloomyfish.web" />
<!-- enable anntotation-driven controllers -->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
 
<!-- configure FreeMarker support -->
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
  <property name="templateLoaderPath" value="/WEB-INF/ftl/" />
</bean>
 
<bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
  <property name="cache" value="true" />
  <property name="suffix" value=".ftl" />
</bean>
</beans>

打包部署项目,使用Maven编译打包以后,选择配置好的Virgo Server图标,右键[Add and Remove]


在弹出的对话框中选则项目,点击add增加到Virgo Server点击finish


1339747972_3685.png


启动运行,选择绿色运行图标,启动Virgo Sever访问如下URL:


http://localhost:8080/gloomyfish, 看到效果是一个基于HTML5的太极图案,要求在支持HTML5的


浏览器上才可以看到效果如下:

1339748002_2126.png


项目打包源代码下载地址为:

http://download.csdn.net/detail/jia20003/4375418

相关文章
|
19天前
|
运维 Java 测试技术
Spring运维之boo项目表现层测试加载测试的专用配置属性以及在JUnit中启动web服务器发送虚拟请求
Spring运维之boo项目表现层测试加载测试的专用配置属性以及在JUnit中启动web服务器发送虚拟请求
19 3
|
23天前
|
存储 安全 Java
在Spring Boot Web应用中,会话技术和会话跟踪
在Spring Boot Web应用中,会话技术和会话跟踪
31 2
|
1月前
|
前端开发 Java BI
Spring3 Web MVC 集成Jasper Report生成PDF例子
Spring3 Web MVC 集成Jasper Report生成PDF例子
34 7
|
1月前
|
Java Serverless 应用服务中间件
Serverless 应用引擎产品使用合集之Web函数启动的Spring Boot项目可以通过什么方式配置Nginx
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
1月前
|
JSON 前端开发 API
Apache HttpClient调用Spring3 MVC Restful Web API演示
Apache HttpClient调用Spring3 MVC Restful Web API演示
22 1
|
1月前
|
tengine 安全 应用服务中间件
修改Nginx/Tengine版本名称伪装任意WEB SERVER
修改Nginx/Tengine版本名称伪装任意WEB SERVER
|
22天前
|
Java Maven Spring
Spring中AOP最简单实例-@注解形式
Spring中AOP最简单实例-@注解形式
25 0
|
22天前
|
XML Java Maven
Spring中AOP最简单实例-XML形式
Spring中AOP最简单实例-XML形式
13 0
|
1天前
|
安全 大数据 编译器
PHP 8: 探索新特性及其对现代Web开发的影响
在这篇文章中,我们将深入探讨PHP 8的最新特性,包括JIT编译器、联合类型、匹配表达式等,并分析这些更新如何影响现代Web开发。通过具体示例和代码片段,本文旨在为开发者提供一个清晰的指南,以便更好地利用PHP 8的新功能优化和加速他们的应用程序。
9 2
|
1天前
|
编译器 测试技术 PHP
深入理解PHP 7的新特性及其对现代Web开发的影响
【7月更文挑战第12天】本文将探讨PHP 7版本中引入的关键改进和新增功能,以及这些变化如何优化了性能、提升了代码的可维护性,并促进了现代Web开发的最佳实践。通过具体示例,我们将深入了解这些新特性在日常开发中的应用,以及它们为开发者带来的实际益处。
10 2