Hi,
I have been evaluating Aspose.Total for Java for my company, and we have run into a serious issue with the product. Apparently, the Aspose developers rely heavily on the non-standard sun.* packages that are NOT part of the Java language API. Those are simply the building blocks Sun used to code their own implementation of the JVM. Therefore, those packages have never been documented or supported as part of Java, and were never guaranteed not to change or disappear with every next Java release. Those packages do not exist in any JVM implementations other than Sun/Oracle. They are deprecated in the Oracle 1.6 implementation, and are completely gone in Java 7. Copying these packages/Jars into a different implementation of the JRE (Apple, IBM, etc) does not guarantee their compatibility with the rest of the implementation. Therefore, using such packages/classes in a commercial product is a serious mistake, an oversight that renders the product not portable. You cannot - and must not - expect that all your customers run their software on one particular implementation of one particular version of JVM.
Please read more about Why Developers Should Not Write Programs That Call ‘sun’ Packages on the Oracle site:
FAQ - Sun Packages
Our questions:
1) Are any tech leads/architects at Aspose aware of this issue? (The threads in the forum indicate that the Aspose support engineers are all but clueless and keep stating that they can’t reproduce the problem when the customers complain about the countless ClassNotFoundExceptions due to non-existing sun.* classes… Frankly, this is mind-boggling, because - according to the forum threads - this has been going on for years!)
2) Is there any hope that the issue will be addressed and resolved any time soon?
I have posted these questions in other threads before but so far there has been no reaction from Aspose whatsoever. Your response and clarifications are much appreciated.
Hi
Constantine
Hi,
We do know that we have to avoid sun.* classes. But time-to-time they leak into production code:) All the references are introduced in new Digital Signature Reading module. The bug will be fixed in the next release. The release will be published as usual, on the last day of current month.
Thanks for your hint.
Best Regards,
Awais and Konstantin,
thank you both very much for responding. It is good to know that the team is aware of the issue and steps are being taken. If I understand Konstantin’s note correctly, Aspose expects to release the new product update that addresses the problem by the end of this month? Wow! That would be great. Or do I misread his statement? We have observed the issue in pretty much every product of the Total suite that we tested: Word, Slides, Cells, etc. Would it be fair to assume that the whole Aspose.Total suite of products will be free of ‘sun’ packages within the next couple of months?
Thanks,
Constantine
Hi
Constantine,
Hi,
Thanks for your posting and using Aspose.Cells for Java.
Aspose.Cells does not call Sun.* packages.
Hi there,
Thanks for the update! That’s good news. JAI packages (com.sun.media.jai and jvax.media.jai) are different from sun.* and are part of standard Java, so there’s no issue there.
What about sun.* usage in Aspose.Slides? Will that be fixed soon as well?
Hi Constantine,
The issues you have found earlier (filed as WORDSJAVA-544) have been fixed in this Java update.
This message was posted using Notification2Forum from Downloads module by aspose.notifier.
(2)
mshakeel.faiz:Hi,
Aspose.Cells does not call Sun.* packages.
at java.lang.J9VMInternals.initialize(J9VMInternals.java:134)
at sun.java2d.SunGraphicsEnvironment.addDirFonts(SunGraphicsEnvironment.java:766)
at sun.java2d.SunGraphicsEnvironment.registerFontsInDir(SunGraphicsEnvironment.java:646)
at sun.java2d.SunGraphicsEnvironment.access$200(SunGraphicsEnvironment.java:87)
at sun.java2d.SunGraphicsEnvironment$1.run(SunGraphicsEnvironment.java:207)
at java.security.AccessController.doPrivileged(AccessController.java:192)
at sun.java2d.SunGraphicsEnvironment.(SunGraphicsEnvironment.java:124)
at sun.awt.X11GraphicsEnvironment.(X11GraphicsEnvironment.java:206)
at java.lang.Class.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:1328)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:102)
at java.awt.image.BufferedImage.createGraphics(BufferedImage.java:1174)
at java.awt.image.BufferedImage.getGraphics(BufferedImage.java:1164)
at com.aspose.cells.b.a.b.i.a(Unknown Source)
at com.aspose.cells.xN.a(Unknown Source)
at com.aspose.cells.WorksheetCollection.W(Unknown Source)
at com.aspose.cells.WorksheetCollection.(Unknown Source)
at com.aspose.cells.Workbook.a(Unknown Source)
at com.aspose.cells.Workbook.(Unknown Source)
Hi,
Thanks for your posting and using Aspose components.
Yes, Aspose.Cells for Java does not use Sun.* package as mentioned earlier. There could be two reasons you files might throw exception.
1 - Your files are corrupt, you can check it by opening them in Ms-Excel 2003/2007/2010
2 - It might be a bug of Aspose.Cells for Java
3 - You might be missing Aspose.Cells for Java prerequisite libraries.
Please provide us your problematic files so that we could investigate your issue further and also make sure you have all the prerequisite libraries in your classpath which are the following. You can find them in the main download link: Aspose.Cells for Java 7.3.3
- bcprov-jdk16-146.jar
- dom4j-1.6.1.jar
- stax2-api-3.0.2.jar
- woodstox-core-asl-4.1.1.jar
The issues you have found earlier (filed as WORDSJAVA-697) have been fixed in this .NET update and this Java update.
This message was posted using Notification2Forum from Downloads module by aspose.notifier.
(1)