来自无状态会话bean的FileIO

时间:2009-05-27 20:12:31

标签: java jboss

我需要从JBoss中运行的无状态会话bean读取和写入xml文件到磁盘。这样做的首选方式是什么?

现在我们正在使用java.io类访问文件系统。

我找到了一个简单的文件系统RAR示例并且已经有了它的工作但是它可能比直接使用java.io更加错误。

3 个答案:

答案 0 :(得分:3)

如果您检查EJB Spec编程限制部分,您会发现以下内容:

  

企业bean不得使用java.io包来尝试   访问中的文件和目录   文件系统。

如果您能找到更好,可能更安全,更重要的交易方式,请重新考虑。我们有一个系统将PDF文档作为blob存储在数据库中,然后通过电子邮件或servlet将它们提供给用户。

基于JBoss JCA的FSManagedConnectionFactory也不错。它是基于JNDI的,并且可能在更多实例中工作,而不仅仅是围绕java.io

进行攻击

答案 1 :(得分:1)

如果您正确关闭文件并进行清理,则可以使用您想要的任何内容。 我会使用XML解析器来读取或写入XML文件,但它更安全。

答案 2 :(得分:0)

复杂的方法是编写一个读取文件的ejb客户端,或以某种方式设置xml数据源。实际上,如果在会话bean中使用java.io,则不会发生任何不良情况。但是,如果您正在使用群集和/或将迁移服务器,那么您必须注意bean运行的位置以及将调用哪个bean。

最简单的“批处理”解决方案是将一台计算机从群集中取出并在那里运行“批处理”应用程序。