标签: jboss6.x

JBoss AS6 app特定的日志记录

我目前正在将旧的Web应用程序从JBoss As 4.2.2 迁移到6.0.0(AS6).在AS6中,我们有一种专有格式,用于通过名为的文件记录应用程序jboss-logging.xml.

在阅读了一些内容(http://community.jboss.org/wiki/SeparatingApplicationLogs)后得出的结论是"(...)从JBoss AS 6.0.0.M2开始,能够根据应用程序记录单独的日志文件,将以不同的方式实施"并且一旦实施准备就绪,文档"(...)将更新更多细节".

但是我能够在我的server/log目录中创建特定的应用程序日志文件,它是使用目录中的主joboss-logging.xml文件完成的server/deploy.这与我的应用程序所需的模块化不兼容.

所以这里有一个问题,当我为我的应用程序创建一个jboss-logging.xml我的WEB-INF目录时,这个配置:

<?xml version="1.0" encoding="UTF-8"?>
<logging xmlns="urn:jboss:logging:6.0" xmlns:b="urn:jboss:bean-deployer:2.0" context="myApp">
   <define-context name="myApp" />

   <periodic-rotating-file-handler
         file-name="${jboss.server.log.dir}/myApp.log"
         name="WEBAPP" autoflush="true" append="true" suffix=".yyyy-MM-dd">
      <error-manager><only-once/></error-manager>
      <formatter>
         <pattern-formatter pattern="%d %-5p [%c] (%t) %s%E%n"/>
      </formatter>
   </periodic-rotating-file-handler>

   <root-logger>
      <!-- Set the root logger priority via a system property, with a default value. -->
      <level name="${jboss.server.log.threshold:INFO}"/>
      <handlers>
         <handler-ref name="WEBAPP"/>
      </handlers> …
Run Code Online (Sandbox Code Playgroud)

java logging jboss jboss6.x

7
推荐指数
2
解决办法
5979
查看次数

JBoss HornetQ:为慢速消费者设置消费者窗口大小

我想设置<consumer-window-size/>0.这似乎是另一个问题(具有多个消费者的JMS队列)的答案,并在本文的第17.1.1节中进行了描述.我使用JNDI检索连接工厂.我hornetq-jms.xml看起来像这样:

<configuration xmlns="urn:hornetq"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:hornetq /schema/hornetq-jms.xsd">

  <connection-factory name="ConnectionFactory">
    <connectors>
      <connector-ref connector-name="netty-connector"/>
    </connectors>
    <entries>
      <entry name="ConnectionFactory"/>       
    </entries>
    <consumer-window-size>0</consumer-window-size>
  </connection-factory>

  <queue name="my.qeue">  
    <entry name="/queue/test"/>  
  </queue>   
</configuration>
Run Code Online (Sandbox Code Playgroud)

该部分<connection-factory/>是从上面的链接复制和粘贴,但我收到错误:

DEPLOYMENTS IN ERROR:
Deployment "org.hornetq:module=JMS,name="ConnectionFactory",
  type=ConnectionFactory" is in error due to the following reason(s):
  HornetQException[errorCode=104 message=There is no connector with
  name 'netty-connector' deployed.]
Run Code Online (Sandbox Code Playgroud)

这可能与JBoss-6相关,因为在其他环境中这似乎有效:用HornetQ强制消息顺序

java hornetq jboss6.x

7
推荐指数
1
解决办法
3711
查看次数

Java Application Server的替代品

我已经专业地使用Java应用程序服务器五年了,但我只经历了两个供应商:Weblogic和JBoss,主要是最后一个.

专注于JBoss我目前正在将一些应用程序从4.2.2版本迁移(或至少尝试)到6.x系列的第一个"稳定"版本.但是,我觉得问题比我预期的要复杂得多.类加载,日志记录,启动过程,所有接缝都发生了变化,我相信它会更好,但总会像这样?

所以我质疑自己其他真正的替代品是什么?现有的替代品有同样的问题吗?

你可能会问我用什么功能来要求像JBoss这样的应用服务器:目前是JMS,XA Transactions,Datasources.

java jboss weblogic application-server jboss6.x

6
推荐指数
1
解决办法
5310
查看次数

当类在JBoss 6 WAR WEB-INF/classes文件夹中时,NoClassDefFoundError

我的问题是我有一个Web应用程序构建并作为WAR文件部署到JBoss 6.我的servlet无法在我的应用程序中加载一个类并抛出NoClassDefFoundError.

我确认此类存在于WAR文件的正确位置.我的所有应用程序类都存在于WEB-INF/classes文件夹中,以及我的servlet类,它可以毫不费力地执行.事实上,似乎只有这一类不在类路径上,因为应用程序的其他方面运行良好.

JBoss在JDK 1.6_21上运行,应用程序是用JDK 1.6_24构建的,这应该不是问题吧?

此外,这个应用程序在Eclipse中本地运行良好,当我将WAR文件部署到单独的Tomcat 7和Glassfish 3服务器时,他们都发现这个类没有问题.

我不希望任何人立刻知道什么是错的,如果有人在此之前看到过这样的事情请分享你的经验,或者如果你有很好的技巧或知道好的工具,真的深入到类路径问题然后请分享.

java war classpath noclassdeffounderror jboss6.x

6
推荐指数
1
解决办法
4743
查看次数

JBoss6 JPA:带有@Lob的实体导致GenericJDBCException

我有一个带@Lob注释的简单EntityBean .如果我删除这个注释,我在JBossAS 6.0.0.Final和MySQL5上没有错误.但是如果我用它注释@Lob(因为mt在我的情况下包含大约100到5000个字符),如果我坚持实体,我在测试环境中会出错.

  • without @Lob:mt映射到VARCHAR
  • with @Lob:mt映射到LONGTEXT(这是我想要的,但是我得到了错误)

这是我的实体:

@Entity
@Table(name = "Description")
public class Description implements Serializable
{ 
  public static final long serialVersionUID=1;

  @Id @GeneratedValue(strategy=GenerationType.IDENTITY)
  private long id;  

  @Lob
  private String mt;
}  // ... getter/setter
Run Code Online (Sandbox Code Playgroud)

错误在这里:

...
Caused by: org.hibernate.exception.GenericJDBCException: could not insert
   [my.Description]
...
Caused by: java.sql.SQLException: Connection is not associated with a managed
     connection.org.jboss.resource.adapter.jdbc.jdk6.WrappedConnectionJDK6@3e4dd
...
Run Code Online (Sandbox Code Playgroud)

我真的不知道为什么我会得到这个(可重现的)错误.环境似乎没问题,许多其他测试都通过了,它甚至可以在没有@Lob注释的情况下工作.

这个问题与JPA有关:如何将String保存到数据库字段中,键入MYSQL Text,其中@Lob …

java mysql jpa lob jboss6.x

6
推荐指数
1
解决办法
5112
查看次数

使用本机Java SE 6 JAX-WS实现而不是JBoss WS堆栈

JBoss 6.0 Final附带了JBoss WS(默认情况下为Apache CXF堆栈),我知道我可以用JBossWS下载站点中相应的JBoss WS Native或Metro版本替换默认实现.

问题是,我有一个客户端jar库(不幸的是二进制文件),它使用了一些专有的SOAP Web服务.当我使用部署到JBoss的Web应用程序中的客户端API时,我遇到了大量间歇性SOAP故障(使用Apache CXF和JBoss Native堆栈进行测试).

由于从独立的jar文件(没有第三方JAX-WS实现)运行时,相同的Web服务似乎工作正常,所以我考虑禁用JBoss WS堆栈,转而使用Java SE提供的本机JAX-WS RI堆栈6.

我知道JBoss Metro WS堆栈应该与Java SE 6附带的内容足够接近,但如果我能使用本机Java SE版本,我将非常感激.

那么,这可行吗?有人指出了方向吗?

java jax-ws classloader jbossws jboss6.x

6
推荐指数
1
解决办法
1万
查看次数

在JBoss AS 6中监听登录事件

我有一个在JBoss AS6中运行的应用程序.身份验证正在使用"FORM"身份验证方法,并且用户正在正确登录.

我希望能够在用户成功登录时调用一段自定义静态代码.

不幸的是,我找不到任何监听器,钩子或回调,它们会在成功登录时执行代码.HttpSessionListener确实有一个"sessionCreated"事件,但是一旦用户访问任何页面就会调用它,即使他们没有成功登录.这意味着即使查看登录表单也会触发事件.

任何人都可以向我指出JBoss AS 6(或同等版本)的一些文档,它们展示了如何在用户首次成功登录时运行自定义代码?

提前致谢.

java session jboss login jboss6.x

6
推荐指数
1
解决办法
2206
查看次数

如何在 jboss eap 6.2 应用程序中在运行时动态读取 standalone.xml 文件?

我需要在运行时读取 standalone.xml 中定义的所有数据源数据,我需要服务器、用户、传递等(所有数据)手动(通过 jdbc 或其他方式)连接到每个数据源。

例如,如果我有一个文件:standalone.xml 像这样:(有 2 个数据源 def ..)

1)

<xa-datasource jndi-name="java:jboss/datasources/MyDS1" pool-name="MyDSPool1" enabled="true">
                    <xa-datasource-property name="URL">
                        jdbc:mysql://localhost:3306/mydb
                    </xa-datasource-property>
                    <driver>mysql</driver>
                   <security>
                        <user-name>myuser</user-name>
                        <password>mypass</password>
                    </security>
                </xa-datasource>
                <xa-datasource jndi-name="java:jboss/datasources/MyDS2" pool-name="MyDSPool2" enabled="true">
Run Code Online (Sandbox Code Playgroud)

2)

  <xa-datasource-property name="URL">
                jdbc:mysql://localhost:3306/mydb
            </xa-datasource-property>
            <driver>mysql</driver>
            <security>
                <user-name>root</user-name>
                <password>root</password>
            </security> 
        </xa-datasource>
Run Code Online (Sandbox Code Playgroud)

然后..在我的 EAP 应用程序中,在我的 servlet(我的 EAP 应用程序的入口点)中,我需要读取 standalone.xml(物理文件),然后获取每个数据源信息并连接到每个数据库。(我不需要在任何 EJB 模块的 EJB 类中注入数据源,我只需要动态读取 standalone.xml(在运行时)并通过 jdbc 连接到每个数据源。我需要读取/循环定义的所有数据源在standalone.xml中并在那一刻通过jdbc连接到每个人(在servlet中)我知道如何通过ejb类中的注释或jndi使用数据源,但我真的需要首先打开/读取standalone.xml(使用getResourceAsStream ? 或类似的东西)并连接到其中定义的每个数据源(应用程序可以使用的所有可能的数据源),例如通过 jdbc 连接到每个数据源)并进行一些检查!

所以基本上我需要的是:在servlet中动态访问/读取StandAlone.xml,(所有数据源数据)。解析它或其他东西,获取所有数据源定义,使用从 standalone.xml 读取的数据通过 jdbc 连接到每个数据源,做一些检查,仅此而已。那可能吗?我正在使用 Jboss EAP 6.2。

谢谢

xml configuration jboss6.x

6
推荐指数
0
解决办法
1303
查看次数

Keycloak给出了无效的重定向uri错误

我对keycloak很新,所以我可能会问一个非常基本的问题.

无论如何,问题如下:

我已经将我的JBoss安装与keycloak saml适配器集成在一起.它安装正确,Jboss工作正常.在此之后,我更新了我的应用程序以包含keycloak_saml.xml并将web.xml中的auth方法更新为KEYCLOAK-SAML.这完全符合keycloak官方文档.我在keycloak_saml.xml中使用实体ID中的URI,例如:/ wapps/myapp

部署和应用程序启动成功.但是,当我测试时,我收到500错误,错误消息是无效的重定向URI.

我能够看到响应头中的重定向URI为空.有没有人见过这个问题.我无法访问keycloak saml服务器,因此无法检查服务器端的设置.

请帮忙.

谢谢!!Pulkit

java java-ee jboss6.x keycloak

6
推荐指数
1
解决办法
5760
查看次数

Angular 2应用程序部署在JBOSS 6.4上,使用java服务作为后端

问题1:Angular 2应用程序部署在JBOSS服务器上但无法加载静态内容(js/css).问题是网站是在它自己的上下文(localhost:8080/sample /)下托管的,而静态资源在index.html中引用为(link href ="css/index.css"rel ="stylesheet")但是它没有得到在对localhost:8080/css/index.css进行网络调用时加载.

我需要它指向localhost:8080/sample/css/index.css

问题2:或者我们尝试在tomcat上托管角度应用程序,但服务需要托管在jboss上,我们尝试实现CROS过滤器(https://amodernstory.com/2014/12/27/using-cors-headers-with-java-示例/)但第一个请求通过但其他请求在Chrome网络的标签中显示待处理状态.

java jboss6.x angular

6
推荐指数
1
解决办法
1298
查看次数