Highlighted
Super Contributor.
Super Contributor.
2269 views

Appliance upgrade to 8.2 - access to port 9443 fails

I get a timeout when trying to access https://x.x.x.x:9443/

The 8.2 upgrade went fine, the OS upgrade went fine and the post upgrade script appears to have run fine.

It eventually fails with a 500 internal server error:

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.apache.tiles.definition.DefinitionsFactoryException: I/O Error reading definitions.

Caused by: org.apache.tiles.definition.DefinitionsFactoryException: I/O Error reading definitions.

my tiles.xml file is owned by vabase-jetty with 0644 set on it as default.

Any ideas?
0 Likes
13 Replies
Highlighted
Outstanding Contributor.
Outstanding Contributor.

0 Likes
Highlighted
Super Contributor.
Super Contributor.

Hi David,

Yes, all relevant steps were followed
0 Likes
Highlighted
Micro Focus Frequent Contributor
Micro Focus Frequent Contributor

rochfordp;2485328 wrote:
I get a timeout when trying to access https://x.x.x.x:9443/

The 8.2 upgrade went fine, the OS upgrade went fine and the post upgrade script appears to have run fine.

It eventually fails with a 500 internal server error:

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.apache.tiles.definition.DefinitionsFactoryException: I/O Error reading definitions.

Caused by: org.apache.tiles.definition.DefinitionsFactoryException: I/O Error reading definitions.

my tiles.xml file is owned by vabase-jetty with 0644 set on it as default.

Any ideas?



Hi,

Can you please check the CAF services are running by executing the below command.
#systemctl status vabase-datamodel.service vabase-jetty.service vabase.service

Based on the output of the above command, if the services are not running it can be started using the below command.
#systemctl start vabase-datamodel.service vabase-jetty.service vabase.service

Once the service comes up, can you please check the UI is accessible?
0 Likes
Highlighted
Super Contributor.
Super Contributor.

Thanks for the response, everything seems to be running fine, but I still can't connect:

systemctl status vabase-datamodel.service vabase-jetty.service vabase.service
● vabase-datamodel.service - DataModel for Virtual Application Server
Loaded: loaded (/usr/lib/systemd/system/vabase-datamodel.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2018-08-07 17:45:33 IST; 1 day 17h ago
Main PID: 5194 (java)
Tasks: 29 (limit: 8192)
CGroup: /system.slice/vabase-datamodel.service
└─5194 /usr/lib64/jvm/java/jre/bin/java -cp /opt/novell/datamodel-service/lib/* -Djava.library.path=/opt/novell/datamodel-service/lib -Dfile.en...

Aug 09 11:26:19 xxxxxxxxx systemd[1]: Started DataModel for Virtual Application Server.
Aug 09 11:27:07 xxxxxxxxx systemd[1]: Started DataModel for Virtual Application Server.

● vabase-jetty.service - Jetty Web Application Server
Loaded: loaded (/usr/lib/systemd/system/vabase-jetty.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2018-08-07 17:45:33 IST; 1 day 17h ago
Main PID: 5236 (java)
Tasks: 55 (limit: 8192)
CGroup: /system.slice/vabase-jetty.service
└─5236 /usr/bin/java -Dfile.encoding=UTF-8 -Djava.rmi.server.useCodebaseOnly=false -Dcom.ibm.security.jurisdictionPolicyDir=/usr/lib64/jvm-priv...

Aug 09 11:26:19 xxxxxxxxx systemd[1]: Started Jetty Web Application Server.
Aug 09 11:27:07 xxxxxxxxx systemd[1]: Started Jetty Web Application Server.

● vabase.service - Task on Shutdown for vabase on Appliance
Loaded: loaded (/usr/lib/systemd/system/vabase.service; enabled; vendor preset: disabled)
Active: active (exited) since Tue 2018-08-07 17:45:33 IST; 1 day 17h ago
Main PID: 5173 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 8192)
CGroup: /system.slice/vabase.service

Aug 09 11:26:19 xxxxxxxxx systemd[1]: Started Task on Shutdown for vabase on Appliance.
Aug 09 11:27:07 xxxxxxxxx systemd[1]: Started Task on Shutdown for vabase on Appliance.
0 Likes
Highlighted
Micro Focus Frequent Contributor
Micro Focus Frequent Contributor

Hi,

Could you please confirm that the port 9443 is opened. Can you check the status of the port with the netstat -an | grep 9443.

Thanks,
Srinivas
0 Likes
Highlighted
Super Contributor.
Super Contributor.

Hi

Yes the port is open, the web service fails with a 500 error.
0 Likes
Highlighted
Absent Member.
Absent Member.

Are you on a closed or otherwise not-connected to the internet network?

The I/O Error reading definitions error is often caused by not being able to connect to a public website referenced in the configuration files. If you trace your "caused by" chain down further on the error message, does it eventually end up being an "unknown host" or "connection refused" type error? Anything along those lines could be an indication that the webapp is attempting to go out to the public URL in search of a DTD file that it did not find locally. In some cases this occurs because the configuration has a mismatched version of the DTD specified versus what is actually available locally to the application.

Some references to problems that fit this description (all generally show as I/O Error Reading definitions at the outset, but trace to failure to contact apache.org in the end):

http://nahidsblog.blogspot.com/2015/03/fixed-javanetunknownhostexception.html
https://stackoverflow.com/questions/5067447/struts2-tiles-when-apache-org-is-down-my-webapp-fails-to-start
https://stackoverflow.com/questions/8735768/using-tiles-with-spring
0 Likes
Highlighted
Absent Member.
Absent Member.

Additional information.

I had this same error (I/O error reading definitions), but following my caused by chain found it was an unknown host exception because my appliance could not resolve "tiles.apache.org" from DOCTYPE reference in tiles-template.xml.
Note: My install was a fresh deployment of 8.2 appliance from OVF.

Resolution to fix was to get a copy of the dtd file, copy it locally, modify the .xml within the .war file causing the issue to reference the local file instead of the apache.org URL, and restart.
The network I work on will never be connected to the internet, so I needed an offline copy of the file. The appliance apparently is not built to work without access to the internet.

More details on how to do that:
1. Download the .dtd from the location specified in the DOCTYPE tag within tiles-template.xml (http://tiles.apache.org/dtds/tiles-config_2_1.dtd)
2. Login to the appliance and do the following:
a. mkdir /dtd
- Note: feel free to use any path you wish, just be consistent in referencing it.
b. copy the downloaded .dtd file to /dtd (use SCP/ftp or whatever method you prefer to get the file onto the system)
c. cd /opt/novell/common-service/webapps
d. jar xvf root.war
e. vi WEB-INF/tiles-template.xml
- Change the “http://tiles.apache.org/dtds/tiles-config_2_1.dtd” entry to: “file:///dtd/tiles-config_2_1.dtd”
- Note: if you used a different path other than /dtd, then use the appropriate path after file://
- Note: There are also cleaner ways to do this if you feel like searching online for how to reference local dtd files, but this was the easy/lazy route.
f. jar cvf root.war META-INF WEB-INF favicon.ico resources
g. reboot the appliance

Hopefully this helps your installation as well.
0 Likes
Highlighted
Knowledge Partner
Knowledge Partner

brookc1, is this something you have done recently, meaning with the latest
appliance? This, to me, sounds like a bug, easily resolved by either
building the DTD into the WAR in the first place (which avoid voiding
support by doing so manually) or else by somehow disabling the lookup of
the DTD on the fly. When other products have had similar limitations,
bugs have resulted.


--
Good luck.

If you find this post helpful and are logged into the web interface,
show your appreciation and click on the star below.

If you want to send me a private message, please let me know in the
forum as I do not use the web interface often.
0 Likes
Highlighted
Absent Member.
Absent Member.

Yes, very recent. Yesterday (8/13/2018) using the latest version of the appliance downloaded from the developer's site last week. Found this thread searching for a solution to the same problem. Shared results once resolved.

Agree that this should be submitted as a bug. I'll do so. It's a bit of a design flaw that they didn't consider what could happen when connection to the internet might not be available when starting the appliance (or really the web service). Easily resolved by the developer including the dtd within the .war as you mention.
0 Likes
Highlighted
Knowledge Partner
Knowledge Partner

Great; thanks! When you have one, please share the bug number so we can
track it and know when it is resolved.

--
Good luck.

If you find this post helpful and are logged into the web interface,
show your appreciation and click on the star below.

If you want to send me a private message, please let me know in the
forum as I do not use the web interface often.
0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.