问题标签 [jboss-modules]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
maven - 用于大量 jar 依赖项的 JBoss 模块 HOW TO
我试图弄清楚如何通过使用JBoss Modules将 JasperReports、Apache POI 和其他重型库直接放入 JBoss AS 来使我的 WAR 更轻。
现在,Jasper 使用许多库来生成 PDF 或 XLS 文件,如您在此处所见。我们的模板已经很老了,我们被旧的 jasper 版本 3.7.1 卡住了,它当然使用旧版本的库,例如 JBoss AS 7.1.1 模块中已经存在的 commons。
如何制作一个“大”模块,其中包含 Jasper 使用的所有 jar,并使用较新的模块保留应用程序的其他部分?
将所有 jar 放入单独的目录似乎工作量很大,但不能保证成功,我们可以将所有内容放入一个模块而不创建类似包的目录吗?
jboss7.x - JBoss 7 忽略了 MANFEST.MF 中的依赖项
我们有一个 EJB 模块,我们正在部署到 JBoss 7.1.1,它依赖于 Infinispan 和 Infinispan Treecache。
我创建了一个模块并将其部署在 jboss 的模块部分。
但是,正确拾取它似乎存在问题。这是作为 Arquillian 测试运行的。部署是:
MANIFEST.MF 如下
infinispan-tree 是手动添加到 jboss 的模块。
为了测试它不是模块配置,这两个模块在standalone.xml 中设置为全局的,你看,一切正常。
即使只是将 org.infinispan(包含在 JBoss 7.x 中)更改为非全局的并尝试从 MANIFEST.MF 中引用它也不起作用。
什么不见了?
java - 驻留在 JBoss 7 模块中时如何声明 JSF 资源包?
我正在将我们的 JSF messages.properties 移到战争之外,因此 QA 和操作人员可以修改消息而不会产生新的战争。
我创建了一个 JBoss 7 模块并将 messages.properties 文件放在 $JBOSS_HOME/modules/com/acme/revenue/main/messages.properties 中。我更新了 jboss-deployment-structure.xml 以包含
我在 $JBOSS_HOME/modules/com/acme/revenue/main 中放置了一个 module.xml 文件。它包含:
这一切都有效。在我可以调用的java代码中:
它返回翻译后的值“收入目标”。但是在 JSF .xhtml 文件中,代码调用 #{messages.TargetingKey} 并且它不起作用,因为 JSF 似乎没有找到资源包。
在更改之前 faces-config.xml 包含以下内容并且运行良好:
如何修复此 JSF 声明以查找捆绑包并显示消息?
谢谢你。
java - 单例和 JBoss 模块 - 我会有多个对象实例吗?
我在我们的企业应用程序中使用 jboss 模块。
我们有一个 jboss 模块(假设它被打包到“a.jar”中)。
这个 jboss 模块包含一个单例(不是 Java EE 单例 bean,而是一个 POJO 单例,带有“getInstance”方法)。
有几个 servlet 过滤器和 servlet 需要访问这个单例。
我会遇到单例类的多个实例,还是由于 jboss 模块的类加载特性,我只会得到一个实例?
谢谢!
jboss - Jboss试图从其他war文件加载依赖类
我不知道如何,但 jboss 正在尝试从其他已部署的 war 文件加载依赖项,该文件以链接错误结束。所以我的肥皂网络服务失败了。
举个例子;到目前为止,我已经部署并工作了一个战争文件 A.war。然后,我编写了另一个包含 Web 服务的 Web 应用程序并进行了部署。当我尝试调用我的第二个应用程序(B.war)时,它正试图去 A.war 定义模块
请参阅下面的异常。这花了我 2 天的时间,现在我每时每刻都在疯狂地开车。
Jboss版本是:7.1.3
有趣的是,这是我启动 jboss 后的第一次。如果我这次尝试重新运行相同的测试,最后一个 ClassNotFoundException 没有显示。
jakarta-ee - 通过创建另一个 WAR 来扩展 WAR 文件中的类
在应用程序服务器中提供 WAR-WAR 依赖项是一种好习惯吗?两场战争都属于同一个 EAR。原因:扩展一个 WAR 的功能(通过继承)。
出于某种原因(为简单起见,我不想解释),两个 WAR 都将被使用,并且将有自己独立的上下文路径。换句话说,基础 WAR 不是抽象的。
当我们使用 JBOSS 模块时,运行时依赖是通过在 MANIFEST.MF 中提及依赖“deployment..war”来解决的。这又是一个好习惯吗?
java - 如何从部署在 JBoss 7 或 WildFly 中的应用程序访问 JDK tools.jar javac
我正在部署一个尝试使用但javac
最终失败的应用程序java.lang.NoClassDefFoundError: com/sun/tools/javac/Main
我应该如何使部署在 JBoss 7 或 WildFly 中的应用程序可用javac
?tools.jar
java - 为什么这个基于 JNI 的 JBoss 模块会抛出错误“找不到依赖库”?
我有一个myproject.war
部署到 JBoss 的 Java Web 应用程序。应用程序的一部分使用 JNI 连接到 C++ DLL,该 DLL 调用来自一组第三方库的函数。我们正在将此应用程序从 x32 服务器迁移到 x64 服务器。
先前的环境构建
- 32 位 Windows Server 2003
- JBoss 6.X
- Java 1.6.X
新环境搭建
- 64 位 Windows Server 2008 R2、SP1 (6.1.7601)
- JBoss AS 7.2.0 最终版“Janus”
- Java 运行时 1.7.0_45-b18。
- 安装了 Visual Studio 2010 Redistributable x64
在旧系统上,自定义 DLL 和第三方库被毫不客气地转储到C:\Windows\System32\
其中,应用程序能够通过 JNI 成功连接到它们。第三方库包括几个 DLL、一些 ICC 配置文件和一个资源文件夹,其中包含文件的子文件夹,包括 True-type 字体、配置和其他文件。
对于迁移,创建了一个 JBoss 模块来包含 JNI 代码。Java / JNI 代码已移至MyModule.jar
,并MyDriver.dll
重新编译为 x64。获得了x64版本的第三方库。
我有
- 使用 Visual Studio 2010 (10.0.40219.1 SP1Rel)重新编译
MyDriver.dll
为 64 位 - 将
MyDriver.dll
64 位版本的第三方 DLL 和资源文件夹放入模块文件夹中..\main\lib\win-x86_64\
modules
将模块文件复制到文件夹下的路径- 创建
module.xml
- 与适当的资源
MyModule.jar
。- 其中有
MyDriverLoader
加载的类MyDriver.dll
。
- 其中有
- 参考
sun.jdk
我不是100%确定JNI需要的模块。
- 与适当的资源
DLL是用
- MFC 的使用:使用标准 Windows 库
无论我做什么,在启动应用程序时,JBoss 都会抛出以下 Java 错误:
java.lang.UnsatisfiedLinkError: D:\Jboss\jboss-7.2.0.Final\modules\com\mymodule\main\lib\win-x86_64\MyDriver.dll: 找不到依赖库
这告诉我的是
- JBoss 可以从模块中检测到正确的 DLL,因此我已经正确配置了模块。
- 一些依赖库不在 JBoss 的路径中。
我已经尝试了以下解决方案,但它们都不起作用并且错误仍然存在:
- 我已经安装了 Visual Studio 2010 Redistributable x64,它可能已经被打包了。
- 我已明确添加
{JBOSS_HOME}\modules\com\mymodule\main\lib\win-x86_64
到 Windows 环境变量PATH
并确认了这一点,echo %PATH%
其中包括:D:\Java\jdk1.7.0_45\bin;D:\Jboss\jboss-7.2.0.Final\modules\com\mymodule\main\lib\win-x86_64;
. - 我运行了 x64 Dependency Walker,它告诉我
MSVCP100D.DLL
,MSVCR100D.DLL
但IESHIMS.DLL
没有找到。我MSCV*.DLL
在c:\Windows\System32
和C:\Windows\SysWOW64
文件夹中都找到了这两个文件,但它们的文件大小不同。Dependency Walker 已检测到要驻留的其他文件的路径system32
,所以我不明白为什么它没有找到这些MSCV*.DLL
文件。为了测试,我将它们放入与 相同的文件夹...\lib\win-x86_64
中MyDriver.dll
,但这没有改变。
我能做些什么来解决这个问题?
module.xml
MyDriverLoader.java
jboss-deployment-structure
模块文件夹结构mymodule
:
{JBOSS_HOME}\modules\com\mymodule\main
- 我的模块.jar
- 模块.xml
- \lib\win-x86_64\
- 我的驱动程序.dll
- 第三方A.dll
- 第三方B.dll
- 第三方C.dll
- 第三方D.dll
- \资源\数据\设置\
- foo.option 文件
- bar.option文件
java - 需要帮助在 JBoss 7 项目中为 c3p0 制作全局模块
我有一个项目在我试图使用c3p0的 JBoss 7 服务器上运行。JBoss 7 不支持像以前的版本那样只将 jar 转储到 /lib 文件夹中。据我了解,我需要使用新的模块系统。以下是我采取的步骤:
从这里下载了 c3p0 jar:http: //sourceforge.net/projects/c3p0/ ?source=dlp
将 3 个 jar 复制到我的 Eclipse 项目中并将它们添加到构建路径中(我相当确定这是正确完成的)。
在 JBOSS_HOME\modules\com\c3p0\main 创建了一个文件夹,我在那里添加了 3 个 jar,另外我创建了一个包含以下内容的文件“module.xml”:
我在我的 JBoss Standalone.xml 中添加了以下内容(sun.jdk 部分已经存在):
运行服务器并访问使用 c3p0 jar 中的类的代码部分。收到以下错误消息(删节):
我究竟做错了什么?任何帮助深表感谢!
解决方案:
我的 module.xml 缺少依赖项。一个有效的方法如下:
cxf - JBoss 模块 cxf jar 更新?
我正在使用 JBOSS EAP 6.2 来部署 restful web 服务。restful web 服务使用的是 apache cxf,它取自 jboss eap。目前它使用 jar cxf-api-2.7.7.redhat-1.jar 。有什么方法可以在 jboss 模块和 modules.xml 中更新这个 jar。