我知道如果EJB方法抛出已检查的异常,则不会发生事务回滚.
但有没有办法在存在检查异常时强制回滚而不必调用setRollbackOnly()每个方法或创建我自己的Exception类注释@ApplicationException(rollback=true)?
目前我们所有的EJB方法都抛出了Exception(mymethod() throws Exception),我们希望在抛出这种异常时应用快速修复来进行事务回滚,而不必修改每个方法签名.
是否可以通过修改应用程序服务器上的参数(当前使用Jboss AS 7.1.1),在EJB类上使用注释或通过定义某种拦截器来实现?
谢谢你的帮助 ;)
我正在使用iText从pdf文件中的特定位置提取一些文本。为了做到这一点,我正在使用LocationTextExtractionStrategy:
public static void main(String[] args) throws Exception {
PdfReader pdfReader = new PdfReader("location_text_extraction_test.pdf");
Rectangle rectangle = new Rectangle(38, 0, 516, 516);
RenderFilter[] filter = {new RegionTextRenderFilter(rectangle)};
TextExtractionStrategy strategy = new FilteredTextRenderListener(new LocationTextExtractionStrategy(), filter);
String text = PdfTextExtractor.getTextFromPage(pdfReader, 1, strategy);
System.out.println(text);
pdfReader.close();
}
Run Code Online (Sandbox Code Playgroud)
问题在于提取的文本顺序错误:
应该提取为:
Run Code Online (Sandbox Code Playgroud)Part Description Quantity Unit Price Total For Line Extended Price Landing Fee 1.00 407.84 $ USD 407.84 407.84 $
提取为:
Run Code Online (Sandbox Code Playgroud)Total For Line Extended Price Part Description Quantity Unit Price 1.00 407.84 $ USD …