Opened 16 years ago

Closed 16 years ago

#107 closed defect (fixed)

could not perform search, create new metadata, upload thumbnail in ipv6 network

Reported by: wlx Owned by: simonp
Priority: major Milestone: v2.4.0 RC2
Component: General Version: v2.2.0 Final
Keywords: ipv6 Cc:

Description

Geonetwork version is 2.2.0.

The server and the client both have ipv6 address. When the client visit the geonetwork server, these functions could not perform: search, create new metadata, upload thumbnail.

In the log file:

2009-05-14 11:14:58,155 INFO  [jeeves.webapp.main.home] - Creating default search data
2009-05-14 11:14:58,156 INFO  [jeeves.webapp.main.home] - Returning search data
2009-05-14 11:14:58,206 ERROR [jeeves.service] - Exception executing gui service : java.lang.NumberFormatException: For input string: "2001:cc0:f006:0:221:9bff:fe6c:7168"
2009-05-14 11:14:58,207 ERROR [jeeves.service] -  (C) Stack trace is :
java.lang.NumberFormatException: For input string: "2001:cc0:f006:0:221:9bff:fe6c:7168"
        at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Integer.parseInt(Integer.java:456)
        at java.lang.Integer.parseInt(Integer.java:497)
        at org.fao.geonet.kernel.AccessManager.getAddress(AccessManager.java:341)
        at org.fao.geonet.kernel.AccessManager.isIntranet(AccessManager.java:327)
        at org.fao.geonet.kernel.AccessManager.getUserGroups(AccessManager.java:170)
        at org.fao.geonet.guiservices.metadata.GetLatestUpdated.exec(GetLatestUpdated.java:80)
        at jeeves.server.dispatchers.guiservices.Call.exec(Call.java:75)
        at jeeves.server.dispatchers.AbstractPage.invokeGuiService(AbstractPage.java:119)
        at jeeves.server.dispatchers.AbstractPage.invokeGuiServices(AbstractPage.java:104)
        at jeeves.server.dispatchers.ServiceManager.dispatchOutput(ServiceManager.java:588)
        at jeeves.server.dispatchers.ServiceManager.dispatch(ServiceManager.java:382)
        at jeeves.server.JeevesEngine.dispatch(JeevesEngine.java:616)
        at jeeves.server.sources.http.JeevesServlet.execute(JeevesServlet.java:163)
        at jeeves.server.sources.http.JeevesServlet.doGet(JeevesServlet.java:88)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Thread.java:619)


So, to use these functions, I make a temp solution:

wlx@wlxpc:~/Projects/geonetwork-2.2.0/src/org/fao/geonet/kernel$ svn diff
Index: AccessManager.java
===================================================================
--- AccessManager.java	(版本 3883)
+++ AccessManager.java	(工作副本)
@@ -322,11 +322,13 @@
 		String network = settMan.getValue("system/intranet/network");
 		String netmask = settMan.getValue("system/intranet/netmask");
 
-		long lIntranetNet  = getAddress(network);
-		long lIntranetMask = getAddress(netmask);
-		long lAddress      = getAddress(ip);
+		// to avoid ipv6 problem
+		//long lIntranetNet  = getAddress(network);
+		//long lIntranetMask = getAddress(netmask);
+		//long lAddress      = getAddress(ip);
 
-		return (lAddress & lIntranetMask) == lIntranetNet ;
+		//return (lAddress & lIntranetMask) == lIntranetNet ;
+		return false;
 	}
 
 	//--------------------------------------------------------------------------

Change History (2)

comment:1 by ticheler, 16 years ago

Milestone: v2.4.0 RC2
Owner: changed from geonetwork-devel@… to simonp

comment:2 by simonp, 16 years ago

Resolution: fixed
Status: newclosed

Fixed in svn revision 4418

Note: See TracTickets for help on using tickets.