Bug #6467
closeddata tab no longer works
0%
Description
Searching for "datos" in the data tab generates exceptions:
[null] ERROR (org.ecoinformatics.seek.datasource.EcogridQueryDataCacheItem:doWork:110) The exception in query is
[null] AxisFault
[null] faultCode: {http://xml.apache.org/axis/}HTTP
[null] faultSubcode:
[null] faultString: (301)Moved Permanently
[null] faultActor:
[null] faultNode:
[null] faultDetail:
[null] {}:return code: 301
[null] <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
[null] <html><head>
[null] <title>301 Moved Permanently</title>
[null] </head><body>
[null] <h1>Moved Permanently</h1>
[null] <p>The document has moved <a href="https://knb.ecoinformatics.org/knb/services/QueryService&quot;&gt;here&lt;/a&gt;.&lt;/p>
[null] <hr>
[null] <address>Apache/2.2.14 (Ubuntu) Server at ecogrid.ecoinformatics.org Port 80</address>
[null] </body></html>
[null]
[null] {http://xml.apache.org/axis/}HttpErrorCode:301
[null]
[null] (301)Moved Permanently
[null] at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:744)
[null] at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:144)
[null] at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
[null] at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
[null] at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
[null] at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
[null] at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
[null] at org.apache.axis.client.Call.invoke(Call.java:2767)
[null] at org.apache.axis.client.Call.invoke(Call.java:2443)
[null] at org.apache.axis.client.Call.invoke(Call.java:2366)
[null] at org.apache.axis.client.Call.invoke(Call.java:1812)
[null] at org.ecoinformatics.ecogrid.queryservice.stub.QueryServiceStub.query(Unknown Source)
[null] at org.ecoinformatics.ecogrid.queryservice.QueryServiceClient.query(Unknown Source)
[null] at org.ecoinformatics.seek.datasource.EcogridQueryDataCacheItem.doWork(EcogridQueryDataCacheItem.java:101)
[null] at org.kepler.objectmanager.cache.DataCacheObject.run(DataCacheObject.java:422)
[null] at java.lang.Thread.run(Thread.java:695)
Updated by Matt Jones over 10 years ago
This is because we just recofigured the KNB site last week to only use https, and all http requests are redirected to the https port. So, it seems the Kepler client does not detect and follow the redirect in its web service request. Changing the service url to use https should fix the problem, but it would also be smart to add redirect support when a 301 or 302 HTTP code are received.
Updated by ben leinfelder over 10 years ago
Would you be amenable to a temporary fix server-side by allowing HTTP traffic on the "ecogrid.ecoinformatics.org" hostname?
Updated by Matt Jones over 10 years ago
Yes, I would. I think that is a good compromise -- keeps the KNB working, and the ecogrid server working. But it should truly be temporary.
Updated by Daniel Crawl over 10 years ago
Where's the service url specified? I tried changing all the URLs in the ecogrid module's configuration.xml to use https, but it still uses http.
Updated by ben leinfelder over 10 years ago
Perhaps the "repository" module's configuration.xml file?
Updated by Jing Tao over 10 years ago
I believe it is the ecogrid module's configuration.xml? Did you change the one in the ~/KeplerData directory?
Updated by Jing Tao over 10 years ago
Oh, the configuration.xml in the reporting module has the query service as well. Because of the overwriting mechanism in kepler, you have to update the endpoints in the reporting module.
Updated by Daniel Crawl over 10 years ago
I changed ecogrid, repository, and reporting configuration.xml files. I also deleted the configuration files in ~/KeplerData/modules.
When I search in the data tab, I no longer get an exception, but I also don't get any results.
Based on the stack trace (see my original post), I looked at org.ecoinformatics.ecogrid.queryservice.stub.QueryServiceStub.query() in repository/lib/jar/ecogrid_client_lib/org.ecoinformatics.ecogrid-stub.jar. It's got a bunch of hard-coded URLs... Perhaps all the ecogrid jars need to be regenerated?
Updated by ben leinfelder over 10 years ago
- Status changed from New to Closed
I made a new apache configuration for ecogrid.ecoinformatics.org that does not force a redirect to HTTPS. All KNB traffic will be routed to HTTPS, but ecogrid calls will not.
I tried a Kepler search and it returned as expected.
Updated by Daniel Crawl over 10 years ago
Jing updated the configuration files for ecogrid and reporting. He also found that $HOME/.kepler/cache-2.4/modules/ecogrid/EcoGridServices needs to be removed.
Updated by ben leinfelder over 10 years ago
We could leave ecogrid http open...indefinitely, though that is not our preference. It's not clear how to force people to refresh their cache. Maybe this already happens on start-up when we query the registry service? I forget.
Updated by Jing Tao over 10 years ago
benMac, the registry url doesn't work: https://knb.ecoinformatics.org/registry/services/RegistryService.
I took a look and found the apache configuration doesn't forward the registry context to the tomcat through ajp3. I tried to change it but it seems that i don't have the sudo permission. Would you please change the configuration? Thanks.
Updated by ben leinfelder over 10 years ago
Okay, the registry is re-enabled on KNB