Another query, sorry!
I've had a Fosstrak EPCIS demo system up and running on my laptop for a while now (as localhost). This uses Fosstrak 0.5.0 running on MySQL 5.6.17, MySQL Connector Java 5.1.35 & Tomcat 8.0.23, all on Java 1.8.0.60.
When I first set it up, I also got the webadapter working (see previous posts). This included setting the epcisurl (via
http://localhost:8080/epcis-webadapter-0.1.0/rest/1/config/epcisurl ) to
http://localhost:8080/epcis-repository-0.5.0/ (as the default was
http://localhost:8080/epcis-repository-0.4.2/At least, I thought I had. It all seemed to work, and I was getting proper results back.
I then ignored the webadapter for a while, and just used SOAPUI as my main query interface. Today, I went back to the webadapter, and have been getting errors trying to get into it. Trying to go to
http://localhost:8080/epcis-webadapter-0.1.0 and then clicking on the EPCIS Web Adapter link opens the
http://localhost:8080/epcis-webadapter-0.1.0/rest/1/ page which shows an error:
java.lang.NullPointerException
org.fosstrak.webadapters.epcis.db.InternalDatabase.getConfigurationEntry(InternalDatabase.java:202)
at org.fosstrak.webadapters.epcis.db.InternalDatabase.initializeIfNotPresent(InternalDatabase.java:121)
at org.fosstrak.webadapters.epcis.db.InternalDatabase.<init>(InternalDatabase.java:73)
at org.fosstrak.webadapters.epcis.db.InternalDatabase.getInstance(InternalDatabase.java:84)
at org.fosstrak.webadapters.epcis.logic.AbstractEventFinderBusinessLogic.reload(AbstractEventFinderBusinessLogic.java:94)
[...]
Refreshing the page shows the normal EPCIS Browser page with links for Query Form, Browsable Event Finder, etc.
Clicking on the Query Form link goes to the normal query page, with a popup error "Error in HTTP GET: Cannot load Business Locations." When I click OK to this error, I get another identical one, clicking OK on that I can then get to the query form properly.
I think these two errors are connected?
When I then enter some details for a query and click Submit, I get a page showing "The server sent HTTP status code 404: Not Found"
Additionally, if I go back to the EPCIS Browser page and click on Configuration, then "Configuration of the EPCIS URL", I get to the page
http://localhost:8080/epcis-webadapter-0.1.0/rest/1/config/epcisurl which shows "The actual EPCIS URL:
http://localhost:8080/epcis-repository-0.4.2" - which is clearly not what I originally set it up as!
If I try to change it to
http://localhost:8080/epcis-repository-0.5.0 and click Update, I get a popup "Error in HTTP POST". In the log file this shows as:
java.lang.NullPointerException
at org.fosstrak.webadapters.epcis.db.InternalDatabase.getConfigurationEntry(InternalDatabase.java:202)
at org.fosstrak.webadapters.epcis.db.InternalDatabase.initializeIfNotPresent(InternalDatabase.java:121)
at org.fosstrak.webadapters.epcis.db.InternalDatabase.<init>(InternalDatabase.java:73)
at org.fosstrak.webadapters.epcis.db.InternalDatabase.getInstance(InternalDatabase.java:84)
at org.fosstrak.webadapters.epcis.config.Config.SET_EPCIS_REPOSITORY_URL(Config.java:225)
[...]
So I had a look at the underlying SQLite database ( <path>\apache-tomcat-8.0.23\webapps\epcis-webadapter-0.1.0\epcis-restadapter.db ) using the sqlite command line (and, as a further check, a couple of GUI frontends I found). All of them report the configuration table as:
key value
lastInitialized 1433241728905
epcisurl
http://localhost:8080/epcis-repository-0.4.2Note that 1433241728905 appears to translate to a date in June - which was when I got the webadapter working!
If I manually edit the epcisurl row to show
http://localhost:8080/epcis-repository-0.5.0, the changes are saved, but restarting the webadapter does not change any of the error messages I am getting - even
http://localhost:8080/epcis-webadapter-0.1.0/rest/1/config/epcisurl still shows the wrong (old 0.4.2) address!
Am I missing something really simple here??! I've tried looking into how to increase the logging level for the webadapter, but so far haven't been able (there aren't any .properties files in <path>\apache-tomcat-8.0.23\webapps\epcis-webadapter-0.1.0\WEB-INF\classes and adding a log4j.properties file doesn't seem to make any difference).
As usual, any help would be appreciated!
Thanks,
Dave