I discovered this morning (2015-01-10) that I cannot deploy my Java EE application in GlassFish 4.1 without an Internet connection. I realized this fact when I tried to deploy my applications and received the following error:
- java.io.IOException: Error parsing descriptor Deployment descriptor file META-INF/glassfish-ejb-jar.xml in archive [elis-ejb-0.0.1-SNAPSHOT_jar].
at com.sun.enterprise.deployment.io.DeploymentDescriptorFile.read(DeploymentDescriptorFile.java:361)
at com.sun.enterprise.deployment.util.DOLUtils.readRuntimeDeploymentDescriptor(DOLUtils.java:512)
- ...
- Caused by: java.io.IOException: Server returned HTTP response code: 503 for URL: http://www.oracle.com/splash/java.net/maintenance/index.html
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1838)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1439)
Apparently, several Oracle web sites where down until around 08:30 central time this morning that my GlassFish Java EE application depends on to parse the glassfish-ejb-jar.xml file during application deployment. I noticed that http://www.glassfish.org also resulted in the following error message page until the same time that I was able to deploy my application again.
I am currently developing the application, so I was able to wait for the web site(s) to recover before continuing my development without much inconvenience. However, this incident worries me about the eventual deployment of the application to run my company because the applications needs to run and preferably to deploy without an Internet connection.
How do I identify my application's Internet dependencies?
How do I eliminate my application's Internet dependencies?
The following is my ejb-jar.xml.
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/ejb-jar_3_2.xsd"
version="3.2">
</ejb-jar>
The following is my glassfish-ejb-jar.xml file.
<!DOCTYPE glassfish-ejb-jar PUBLIC "-//GlassFish.org//
DTD GlassFish Application Server 3.1 EJB 3.1//EN"
"http://glassfish.org/dtds/glassfish-ejb-jar_3_1-1.dtd">
<glassfish-ejb-jar>
<display-name>elis-ejb</display-name>
</glassfish-ejb-jar>