我一直在试图编写一个EJB来扫描它正在运行的JBoss服务器,并提供了实现特定接口的所有可用类的列表。在C#中这很容易,我在Java中看到了一些例子。但是,Java示例是专为在应用程序容器中使用而设计的。我需要一些适用于JBoss的东西。查找实现特定接口的所有Java bean
我试着玩枚举所有可用的EJB,并没有能够使其工作。谁能帮我这个?
感谢, 阿维
我一直在试图编写一个EJB来扫描它正在运行的JBoss服务器,并提供了实现特定接口的所有可用类的列表。在C#中这很容易,我在Java中看到了一些例子。但是,Java示例是专为在应用程序容器中使用而设计的。我需要一些适用于JBoss的东西。查找实现特定接口的所有Java bean
我试着玩枚举所有可用的EJB,并没有能够使其工作。谁能帮我这个?
感谢, 阿维
您可能会发现这个库有用http://code.google.com/p/reflections/
使用思考,你可以查询你的元数据,如:
您可以使用JMX与JBoss服务器&连接可以得到部署在服务器上的所有豆。 然后,您可以使用反射来进一步验证,实现特定的接口等。
链接:How do I find out what port my jboss server is listening on programmatically using JBoss 4.2.3?使用JMX与JBoss连接。然后根据特定属性,您可以从服务器获取信息。
如果你想获得某个接口的所有实现,可以使用@Any注解和Instance类。
你如何想象这与已经部署在服务器中的类/接口的工作?将jboss中的所有存档添加到反射类路径中? – 2011-03-31 11:40:55
可能。我相信你可以在每个jar中创建一个索引文件来加快速度。它也可能有助于部署。我不知道你是否有可能需要为JBoss做些什么。 – 2011-03-31 11:45:02