当前位置:首页 » 网页前端 » osgi开发web应用
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

osgi开发web应用

发布时间: 2022-09-19 16:16:50

㈠ 使用OSGI开发webapp 怎么添加filter

根据你的描述: web bundle 我的实现方法是在OSGi中加入一个jetty bundle,其他bundle引用这个HttpService,并把自己加入到这个HttpService中。

㈡ osgi里面怎么整合cxf生成的webservice客户端

你可以试试把webservices-api-2.0.1.jar这个jar包删了

㈢ GlassFish是什么基于OSGi的Web服务器

GlassFish 是一个轻量级的Web2.0开发和部署平台,建立在基于OSGi的模块化架构上。开发者可以从这个支持动态扩展和可嵌入式的平台上获益,此平台还支持现存的Java Web技术,以及JRuby和Groovy。GlassFish包括哪些功能?GlassFish提供了一个基于OSGi的轻量级可扩展的核心。与GlassFish的更新中心结合,开发人员可以获得Java Web技术,动态语言支持,容易使用的管理和命令行界面。GlassFish社团正在开发一个免费,开源的Java应用服务器。这个服务器实现了Java平台中的最新特性。Java平台包括一些技术的最新版本如:◆Enterprise JavaBeans (EJB) 3.0, ◆JavaServer Faces (JSF) 1.2, ◆Servlet 2.5, ◆JavaServer Pages (JSP) 2.1, ◆Java API for Web Services (JAX-WS) 2.0, ◆Java Architecture for XML Binding (JAXB) 2.0, ◆Java Persistence 1.0, ◆Common Annotations 1.0, ◆Streaming API for XML (StAX) 1.0和其它一些新的技术。目前最新版的GlassFish技术预览版已经发布,具有高度模块化特点,扩展方便,支持java,

㈣ OSGI 整和 webService 用eclipse Equinox 怎么弄 讲讲都有什么 方法

如果你建立一个web service的话,直接用他自带的组建就可以了,如果根据WSDL生成客户端的话,也可以根据他的组建 建立一个 web service client,然后输入WSDL地址,然后下一步下一步就可以了

㈤ osgi新建web程序,缺少org.morbay.jetty包的依赖。

本身就带着。运行时需要明确选择jetty的相关插件。

㈥ OSGI是什么

今天在看公司的文档的时候,发现了好多不懂得名词。特别是对OSGI这个词比较的感兴趣,就到网上去查了一下他的一些资料。以我的技术水平,看了半天愣是没看明白。尽管没有看明白,但还是要写下来,免得下次要找资料的时候还是要到处乱找。
OSGI(Open Service Gateway Initiative) 它可以被看做OSGi Alliance组织;也可以认为是该组织制定的一个基于Java
a) 您可以在不重启容器的情况下,动态地安装、卸载、启动和停止您的应用程序中的不同模块;
b) 对于您应用程序中的某一特定模块,容器可以同时运行该模块的多个版本;
c) OSGi为开发嵌入式应用、移动应用、富互联网应用(RIA)提供了非常优秀的基础架构
个模块负责视图层,另一个模块负责DAO层,第三个模块负责数据访问层,如果我们使用OSGi容器来管理这些模块之间的交叉依赖,我们就可以在不用重启该
Web应用的前提下,将DAO层从速度较慢的升级到速度较快的DAO。
附:一些OSGI的资料你好,OSGI
这是一个OSGI的专题汇总。里面的资料还是很不错的
OSGI Alliance
这个是OSGI的官方网站。不过是英文的 ^_^
这个OSGI在javaEye网站上的专题。很不错,可以去看看

㈦ osgi web应用 怎样部署

osgi web应用 怎样部署
省略了“表达式3(循环变量增量)”, 则不对循环控制变量进行操作,这时可在语句体中加入修改循环控制变量的语句。
例如:
for(i=1;i<=100;)
{sum=sum+i;
i++;}
5) 省略了“表达式1(循环变量赋初值)”和“表达式3(循环变量增量)”。
例如:
for(;i<=100;)
{sum=sum+i;
i++;}
相当于:
while(i<=100)
{sum=sum+i;
i++;}
6) 个表达式都可以省略。
例如:
for(;;)语句
相当于:
while(1)语句

㈧ 如何在 WebSphere Application Server V8 中部署和管理 OSGi 应用

Blog 应用程序包里共有 5 个 bundle,但是只需要其中的四个就可以运行这个程序,因为第五个 bundle 是持久化 bundle 的更新版本,主要是用来演示如何去动态更新 OSGi bundle 的。另外,要想使 Blog 应用正常运行,还有两个与日志相关的 bundle,这两个 bundle 需要事先导入到 WAS 的内部 bundle 存储库里。以上所提到的所有资源被放在 blogSample.zip 文件中的 installableApps 文件夹里。这些 bundle 是按功能划分的:
com.ibm.samples.websphere.osgi.blog.persistence, 包含了和持久化相关的代码,同时也提供了一些接口,可以被主程序用来执行博客更新和查询功能。
com.ibm.samples.websphere.osgi.blog_1.0.0,是 Blog 应用的主程序,包含了主要的业务逻辑代码,并负责和前端 web 层与后端持久化层的交互。
com.ibm.samples.websphere.osgi.blog.web,借助 html、css 等完成前端显示的功能。
com.ibm.samples.websphere.osgi.blog.api,包含 Blog 应用所需要的 API。
com.ibm.samples.websphere.osgi.blog.persistence_1.1.0,是持久化 bundle 的更新版本,新增了对博客文章的评论服务。
Blog 提供了两种部署方式,一种是利用脚本进行完整的部署,另一种是先用脚本做一些初始的配置,如数据源的配置,然后再用 WAS 管理控制台或命令行方式去安装 Blog 应用。在部署成功以后,我们还可以对应用进行使用、维护、拆卸以及更新操作。在本文中,我们使用第二种方式来部署 Blog 应用。
在 WAS V8 中配置 Blog 应用所需资源
安装 Blog 应用包含两个部分,一部分是配置 Blog 应用所需的资源,例如建立数据库、配置数据源等;另一部分是利用 WAS 管理控制台或者命令行工具安装 Blog 应用到 WAS 上。在这里我们先介绍第一部分,第二部分穿插在后续的 WAS 对 OSGi 应用部署和管理功能介绍的篇章中。
我们使用脚本配置 Blog 应用所需的资源,这些脚本存放在 blogSample.zip 中的 scripts 目录里。其中,createBlogDb.sql 用来创建所需的 Derby 数据库和相关数据库表,blogSampleInstall.py 包含了一些 Jython 命令用来创建数据源,以及以默认的方式安装 Blog 应用。
使用脚本配置 Blog 应用
使用如下命令创建和配置 Derby 数据库(BLOGDB)以及相关数据库表
对于 Unix 系统
app_server_root/derby/bin/embedded/ij.sh scripts/createBlogDb.sql

对于 Windows 系统
app_server_root\derby\bin\embedded\ij.bat scripts\createBlogDb.sql

使用如下命令创建数据源
对于 Unix 系统
app_server_root/profiles/profileName/bin/wsadmin.sh
-f scripts/blogSampleInstall.py setupOnly serverName nodeName

对于 Windows 系统
app_server_root\profiles\profileName\bin\wsadmin.bat

-f scripts\blogSampleInstall.py setupOnly serverName nodeName
运行完上述命令后,可以登录到 WAS 控制台查看刚刚创建的数据源。导航到 Resources > JDBC > Data sources 面板:

部署你的 OSGi 应用
管理 bundle 存储库
在上文我们提到 com.ibm.samples.websphere.osgi.logging.api.jar 和 com.ibm.samples.websphere.osgi.logging.impl.jar 这两个 bundle 是 Blog 应用正常运行所不可或缺的,在安装 Blog 应用之前,需要先将这两个 bundle 导入到 WAS 的 bundle 存储库中。在这一节我们就介绍如何去管理 WAS 的 bundle 存储库。
不同的 OSGi 应用之间可以共享很多通用的 bundle,为了简化对共享 bundle 管理工作以及避免每一个 OSGi 应用都单独的去维护这些 bundle,WAS 提出了 bundle 存储库的概念。共享的 bundle 或者组合 bundle 以及第三方类库的 bundle 都可以事先导入到 bundle 存储库中,每一个 OSGi 应用只需声明对这些 bundle 的引用就可以很方便的使用 bundle 存储库里的 bundle。WAS 的 bundle 存储库包括内部存储库和外部存储库,前者是将共享的 bundle 保存在本地,而后者则可以通过添加链接(名字和 URL)使用外部的 bundle。
管理内部 bundle 存储库
使用 WAS 管理控制台管理内部 bundle 存储库
管理员可以使用 WAS 管理控制台查看已导入的 bundle 以及 bundle 的详细信息,还能通过管理控制台向存储库添加和从存储库删除 bundle。
启动 WAS 管理控制台
导航到 Environment > OSGi bundle repositories > Internal bundle repository 页面在页面中显示的列表就是已经导入到 bundle 存储库里的 bundle,如果是第一次使用,则会显示如下空白页面:

在 bundle 存储库页面可以添加、删除 bundle 或者显示 bundle 详细信息
添加单一 bundle 或者合成 bundle 到存储库
点击 New,将显示上传 bundle 的页面
在对话框里输入 bundle 或者合成 bundle 所在的路径
点击 OK,所指定 bundle 或者合成 bundle 就会被上传到 bundle 存储库
对于 Blog 应用:重复上面的操作,添加 com.ibm.samples.websphere.osgi.logging.api.jar 和 Com.ibm.samples.websphere.osgi.logging.impl.jar 到存储库中。如下图所示:

删除存储库里的 bundle,首先选中需要删除的 bundle,然后点击 Delete 即可完成操作
查看 bundle 的详细信息,点击 bundle 的名字就可以进入到 bundle 的详细信息页面
图 5. Bundle 详细信息
在完成添加和删除操作以后,需要保存修改到主配置文件中。
使用命令行管理内部 bundle 存储库
使用 wsadmin 命令行工具可以实现 bundle 的添加、删除、列表以及显示详细信息操作。由于 wsadmin 默认使用的脚本语言是 jacl,而我们使用的都是 jython 脚本或者命令,所以我们首先要将 wsadmin 的默认脚本语言修改为 jython,方法是编辑如下文件:<profile_root>\<profile_name>\properties\wsadmin.properties,修改"com.ibm.ws.scripting.defaultLang=jython"
导航到 <profile_root>\<profile_name>\bin 目录,启动 wsadmin 命令行工具:

添加单一 bundle 或合成 bundle 到内部存储库
使用 addLocalRepositoryBundle 命令添加 bundle 到存储库,命令格式如下:
AdminTask.addLocalRepositoryBundle('-file path')

该命令中只有一个参数 file,用来指定你要添加的 bundle 的路径,对于 Blog 应用,我们用如下命令依次添加上文提到的两个和 log 相关的 bundle:
AdminTask.addLocalRepositoryBundle('[-file "C:\\blogSample_v8\\blogSample\\installableApps
\\com.ibm.samples.websphere.osgi.logging.impl.jar"]')
AdminTask.addLocalRepositoryBundle('[-file "C:\\blogSample_v8\\blogSample\\installableApps\
\com.ibm.samples.websphere.osgi.logging.api.jar"]')
AdminConfig.save()

添加完以后,登录 WAS 管理控制台,导航至 Internal bundle repository 页面,您将看到两个 bundle 已经被成功添加,如图 4 所示。
显示已添加到存储库里的 bundle 列表
使用 listLocalRepositoryBundles 命令来显示已经添加成功的 bundle 列表,命令格式如下:
AdminTask.listLocalRepositoryBundles()

显示 bundle 的详细信息
使用 showLocalRepositoryBundle 命令来显示 bundle 信息,命令格式如下 :
AdminTask.showLocalRepositoryBundle( ’ -symbolicName bundle_symbolic_name
-version bundle_version ’ )

两个参数分别是要显示 bundle 的名字和版本信息。

将 bundle 从存储库删除
使用 removeLocalRepositoryBundle 或则 removeLocalRepositoryBundles 命令删除一个或多个 bundle,命令格式如下:
AdminTask.removeLocalRepositoryBundle( ’ -symbolicName bundle_symbolic_name
-version bundle_version ’ )
AdminTask.removeLocalRepositoryBundles([

bundle1_symbolic_name;bundle1_version
bundle2_symbolic_name;bundle2_version
bundle3_symbolic_name;bundle3_version ’
])

管理外部 bundle 存储库
对于外部 bundle 存储库,WAS 同样提供了管理控制台和命令行两种管理方式,并且对于外部库的控制和内部库的控制类似。在这里我们就不多加介绍,有兴趣的读者可以阅读本文末参考资料了解更多详细信息。

㈨ 如何将OSGI的Bundle发布为WebService

貌似使用 cxf可以将osgi服务发布为一个webservice, 见:以 OSGi 包的形式开发和部署 Web 服务
但是我没有用过,我也有这方面的需求希望能和有经验的人士一起探讨

㈩ 如何将OSGI的Bundle发布为WebService

貌似使用 cxf可以将osgi服务发布为一个webservice, 见:以 OSGi 包的形式开发和部署 Web 服务