The lifecycle method [init] must not throw a checked exception. Related annotation information: annotation [@javax.annotation.PostConstruct()]…
So what was a checked exception, I thought and got an answer in a few minutes.
To explain a checked exception in short, it is an exception (
java.lang.Throwable and its descendants) that is not an unchecked exception (
java.lang.RuntimeException and its descendants). The
@javax.annotation.PostConstruct annotation simply requires the annotated method does not throw a checked exception, but Quercus violates the requirements.
It became clear that I could not use Quercus on GlassFish Server 4 without modifications, so I decided to build Quercus myself from the source code.
I made a Maven project for Quercus, but the first apparent issue was its dependencies are not clear. I tried to add possible dependency to resolve errors, but a few remained. One of the causes was Quercus happened to use a draft version of the Java Caching API that is not compatible to the final release. I decided to go with the final release and made trivial changes to the Quercus source code. Another one is a bug in the Java EE API available from the Maven repository. I finally added explicit dependency on the CDI APIs to work around it.
(To be continued to Episode 2)
As you may know, xllmnrd 2.0 is out now. The next version will be 3.0 and there are several issues I could work on before making a new release, for instance:
- New option to specify the user xllmnrd operates with (issue #31).
- Proper response to A queries (issue #23).
- Removal of the number limit of interfaces (issue #45).
Some of these issues may be in version 3.0 and others may not. So, I would like to know which issue is more important than others to you? I will try to work on the issues that get more votes.
If you have a Bitbucket account, please vote for the issues that are important to you.
Since I only have access to my personal iPhone 5s, I want testers who have other iPhones or iPads. If you are willing to test my application on your device and to make a feedback, please let me know. I will arrange you can join the test flight soon.