我刚开始做web开发,我想开发一个osgi包,部署在jboss AS7中,任何人都可以告诉我这个目录结构是什么.我搜索了很多,但找不到解决方案,我的目录结构如下所示
myProject --元-INF
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>JbossModule</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>manifest.mf
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: OsgiSample
Bundle-SymbolicName: osgiSample
Bundle-Version: 1.0.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Web-ContextPath: /osgiSample
Webapp-Context: osgiSample我可以部署..。但是得到错误404
发布于 2014-03-08 09:50:54
JBoss AS 7.1.1不支持开箱即用的WAB。以下信息隐藏在“JBoss OSGi 1.1.1用户指南”中:
要在OSGi中启用AS7 Web应用程序支持,您可以配置这些功能
将这些行添加到standalone.xml的standalone.xml子系统并将激活更改为eager
<subsystem xmlns="urn:jboss:domain:osgi:1.2" activation="eager">然后,JBoss将在启动期间下载并安装附加的包。一旦这些包启动,将您自己的WAB复制到standalone/deployments,并且应该部署它。
也请参阅这个论坛帖子。请注意,此WAB运行在一个单独的servlet容器(Pax )中,侦听端口8090 (而不是8080)。
还请注意,在每次重新启动服务器时,似乎都会再次下载这些额外的功能。为了避免这种情况,您可以手动下载额外的包(和一个传递依赖项),并在$JBOSS_HOME/bundles下安装它们。
org/ops4j/pax/web/jetty/main/pax-web-jetty-bundle-1.1.2.jar
org/ops4j/pax/web/extender/war/main/pax-web-extender-war-1.1.2.jar
org/ops4j/pax/web/jsp/main/pax-web-jsp-1.1.2.jar
org/eclipse/jdt/core/compiler/ecj/main/ecj-3.5.1.jar然后将上述功能替换为:
<capability name="org.ops4j.pax.web.jetty"/>
<capability name="org.eclipse.jdt.core.compiler.ecj"/>
<capability name="org.ops4j.pax.web.jsp"/>
<capability name="org.ops4j.pax.web.extender.war"/>https://stackoverflow.com/questions/22150436
复制相似问题