Re: WebObjects and IPv6 Support
Re: WebObjects and IPv6 Support
- Subject: Re: WebObjects and IPv6 Support
- From: Ray Kiddy <email@hidden>
- Date: Wed, 16 Apr 2014 16:01:23 -0700
Wonder has a few classes in it that replace eocontrol classes but this
class is unfortunately not one of them. My spider-sense is tingling and
telling me that there may be a static final ivar in that class that is
set to the maximum number of bytes allowed for the
hostIdentificationBytes value. It may be called ...
_HostIdentificationBytesLength, perhaps. It's just a guess.
And, you know, if one thought an IP address could be as many as 6 bytes,
this was the 1990's version of thinking ahead.
You could write the code that will, early in your app's life, grab
that static ivar via reflection and call the method that allows you to
set the value of the field to another number. There will be a whole
slew of exceptions to catch there. Look at the javadoc for
java.lang.reflect.Field and the stuff around there. This would be
easier than trying to replace the class right now.
Send a note if you need more specific pointers or if the suggestion
does not work.
cheers - ray
On Wed, 16 Apr 2014 15:23:08 -0400 Saad Laassel
<email@hidden> wrote:
> Hello All,
>
> We are trying to deploy a webobjects application on an IPv6 network
> but as soon we pass "java.net.preferIPv6Addresses = true" to the JVM,
> to try to force our app to use IPv6 addresses we get the following
> error and the application can not start up:
>
> <Servlet: "WOServletAdaptor" failed to preload on startup in Web
> application: "app". javax.servlet.UnavailableException: Error
> initializing servlet adaptor: null at
> com.webobjects.jspservlet.WOServletAdaptor._applicationInit(WOServletAdaptor.java:442)
> at
> com.webobjects.jspservlet.WOServletAdaptor.initStatics(WOServletAdaptor.java:95)
>
>
> We believe this is due to the
> EOTemporaryGlobalID._setHostIdentificationBytes() method that's part
> of the javaeocontrol jar. The _setHostIdentificationBytes() method
> expects the ip address to be either 4 bytes or 6 bytes, but in the
> case of IPv6 it will be 16 bytes so the check fails and an exception
> is thrown. The fix is pretty straight forward but since this is part
> of the WebObjects framework we are unable to change the source code
> and are wondering if this was already addressed as part of project
> wonder? or if somebody has been successful at running WebObjects with
> IPv6 some other way? Thanks in advance.
>
> Thanks,
>
> Saad
>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden