Bug 900032 (JBPAPP6-477) - JBossWS IPv6 issues
Summary: JBossWS IPv6 issues
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: JBPAPP6-477
Product: JBoss Enterprise Application Platform 6
Classification: JBoss
Component: Web Services
Version: 6.0.0
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ER6
: EAP 6.2.0
Assignee: Paul Gier
QA Contact:
URL: http://jira.jboss.org/jira/browse/JBP...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-03-13 09:00 UTC by Rostislav Svoboda
Modified: 2015-02-20 10:21 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: Known Issue
Doc Text:
Cause: Consequence: Workaround (if any): Results:
Clone Of:
Environment:
Last Closed: 2013-12-15 16:21:49 UTC
Type: Bug
Embargoed:
rdickens: needinfo-


Attachments (Terms of Use)
tests-log-eap6-er3 (209.14 KB, application/octet-stream)
2012-03-13 10:56 UTC, Rostislav Svoboda
no flags Details
tests-log-as711 (209.12 KB, application/octet-stream)
2012-03-13 10:56 UTC, Rostislav Svoboda
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker JBPAPP6-477 0 Major Closed JBossWS testsuite fails on IPv6 2014-06-12 08:44:42 UTC
Red Hat Issue Tracker JBWS-3084 0 Major Closed Enable control of chunked encoding when using SOAPConnection 2014-06-12 08:44:42 UTC

Description Rostislav Svoboda 2012-03-13 09:00:41 UTC
project_key: JBPAPP6

Testing on AS711 against JBossWS CXF 4.0.2. Initial run to prepare IPv6 jobs for EAP6.

Many failures: 
 - IPv6 address is not used correctly - localhost.localdomain being used
 - java.io.FileNotFoundException: http://[::1]:8080/...

test configuration: http://pastebin.com/22Mx0jst  (expires in month)
job: http://hudson.qa.jboss.com/hudson/view/EAP6/view/EAP6-WS/job/eap-60-jbossws-testsuite-reference-as71-ipv6/

Comment 1 Rostislav Svoboda 2012-03-13 10:56:01 UTC
I tried to run CXF 4.0.2 TS against AS711 and EAP6 DR3 on my local machine and I received less failures than on hudson.

cxf-tests - Tests run: 68, Failures: 8, Errors: 7, Skipped: 0
shared-tests - Tests run: 399, Failures: 9, Errors: 53, Skipped: 0
shared-tests (forked-integration-tests) - Tests run: 21, Failures: 0, Errors: 0, Skipped: 0

Comment 2 Rostislav Svoboda 2012-03-13 10:56:01 UTC
Attachment: Added: tests-log-eap6-er3
Attachment: Added: tests-log-as711


Comment 3 Rostislav Svoboda 2012-03-13 10:57:19 UTC
{code}
[rsvoboda@rosta-ntb jbossws-cxf-4.0.2.GA]$ java -version
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode)
[rsvoboda@rosta-ntb jbossws-cxf-4.0.2.GA]$ uname -a
Linux rosta-ntb 2.6.35.14-106.fc14.x86_64 #1 SMP Wed Nov 23 13:07:52 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
{code}

Comment 4 Rostislav Svoboda 2012-03-13 13:11:22 UTC
/etc/hosts on testing machine says: 
{code}
127.0.0.1  localhost.localdomain localhost
::1	   localhost.localdomain localhost localhost6.localdomain6 localhost6
...
{code}

I'll try to add -Djava.net.preferIPv4Stack=false -Djava.net.preferIPv6Addresses=true to mvn command.

On my local host I have only 1 line in /etc/hosts and it's for 127.0.0.1

Comment 5 Rostislav Svoboda 2012-03-13 15:18:31 UTC
I was able to get better results on Hudson - 70 failures / 488 tests

http://hudson.qa.jboss.com/hudson/job/eap-60-jbossws-testsuite-reference-as71-ipv6-local-repo/

Is there any JBossWS reference job for IPv6 to compare my results with?

Comment 6 Richard Opalka 2012-03-14 14:49:06 UTC
Link: Added: This issue duplicates JBWS-3458


Comment 7 Alessio Soldano 2012-03-14 15:48:25 UTC
Link: Removed: This issue duplicates JBWS-3458 


Comment 8 Alessio Soldano 2012-03-14 15:48:55 UTC
Link: Added: This issue incorporates JBWS-3458


Comment 9 Richard Opalka 2012-03-16 14:46:34 UTC
Hello Rosta:

   this is our EAP branch U should use for JBossWS testing:

https://svn.jboss.org/repos/jbossws/stack/cxf/branches/jbossws-cxf-4.0.x

This branch have 4 failures that are expected ATM:
---
testWSDLHttpProxy(org.jboss.test.ws.jaxws.cxf.httpproxy.HTTPProxyWSDLTestCase): Unexpected end of file from server
testHttpProxy(org.jboss.test.ws.jaxws.cxf.httpproxy.HTTPProxyTestCase): Could not send Message.
testHttpProxyUsingHTTPClientPolicy(org.jboss.test.ws.jaxws.cxf.httpproxy.HTTPProxyTestCase): Could not send Message.
testSingleDeploy(org.jboss.test.ws.jaxws.cxf.bus.EJB3ClientBusTestCase): com.sun.xml.messaging.saaj.SOAPExceptionImpl
---

First three are test related issues only. We're using httpproxy for testing purposes, but this utility library
has the following issue: https://github.com/adamfisk/LittleProxy/issues/30

The last remaining expected failure is related to: http://java.net/jira/browse/SAAJ-56

For more information see: JBWS-3460

It is also expected to have both IPv4 & IPv6 addresses properly setup for localhost.
It's not allowed to have bound localhost to both 127.0.0.1.
For example working and tested configuration is like this in /etc/hosts
---
127.0.0.1	localhost localhost.localdomain localhost4 localhost4.localdomain4
::1		localhost6 localhost.localdomain6 localhost6 localhost6.localdomain6
---



Comment 10 Richard Opalka 2012-03-16 14:49:02 UTC
Release Notes Text: Added: See comment at JBWS-3458 on how to setup properly IPv6 properties
for both AS7 & JBossWS test suite in our EAP branch.


Comment 11 Richard Opalka 2012-03-16 14:51:20 UTC
See comment at JBWS-3458 on how to properly configure JBossWS test suite in our EAP productization branch.

Comment 12 Pavel Janousek 2012-03-19 09:44:22 UTC
Hi Richard,

from my PoV your assumption about the symbolic name 'localhost' and its resolving isn't valid at all. Name 'localhost' (as every other name) can be translated to either IPv4 or IPv6 IP address - to appropriate record (defined in /etc/hosts, DNS zone etc.) - this is valid case. 

So default setting on Linux  localhost -> 127.0.0.1, localhost6 -> ::1 is truth, but not only one possible and correct setting. In new prepared "pure IPv6 Hudson slaves" there will be also localhost -> ::1 (only). Default setting on MS Windows is localhost -> 127.0.0.1 and localhost -> ::1 (both translation can be used)...

Which one address is used in case of "availability of both records" (A and AAAA record) is controlled by java.net.preferIPv6Addresses. By default you got 127.0.0.1 and if you rely on IPv6 stack, used IP address will be ::ffff:127.0.0.1. Only if you set java.net.preferIPv6Addresses=false, your used address will be ::1.

Also don't forget, if there is only A record available and although you use java.net.preferIPv6Addresses=true, you get IPv4 address (fall-back mechanism is used - this can't be disabled) too = not Exception... Exception is raised only in one case - if you force JVM to use IPv4 (java.net.preferIPv4Stack=true, setting of java.net.preferIPv6Addresses doesn't matter) and there is nothing or AAAA record only.

Conclusion - you can't rely on your configuration because a) default on some OSes is different, b) your are too restrictive and it isn't necessary, because JVM helps you. 

So I think, your testing environment should be a slightly modified.

Comment 13 Alessio Soldano 2012-03-19 11:23:55 UTC
ok, after having checked this again with Pavel, the tests were failing because the AS7 server launch command was missing the -Djava.net.preferIPv6Addresses=true flag (and using -Djava.net.preferIPv4Stack=false only). I've updated the info on running the tests with IPv6 at https://issues.jboss.org/browse/JBWS-3458?focusedCommentId=12677024&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-12677024

Comment 17 Paul Gier 2012-03-29 21:43:58 UTC
This should stay open until jbossws cxf 4.1 is released upstream and updated in AS7


Comment 18 Rostislav Svoboda 2012-03-30 06:41:45 UTC
For EAP6 there is 4.0.x branch, so we need to wait for JBossWS CXF 4.0.3 release.

Comment 19 Alessio Soldano 2012-03-30 07:01:39 UTC
... which has been tagged and will be included in ER5.

Anyway, the question is, can't we mark issues as resolved once we're done with them? Then you close them when the release is done...

Comment 20 Rostislav Svoboda 2012-03-30 07:33:49 UTC
Resolved issues can be still modified to change fix version. I don't see any problem with Alessio's approach. That's the way I personally expect to work on issues. 

Comment 21 Rostislav Svoboda 2012-03-30 07:37:22 UTC
I think it was just misunderstanding from Paul's side to reopen this issue to wait for 4.1 release.

Comment 22 Richard Opalka 2012-04-02 08:47:54 UTC
Link: Added: This issue is incorporated by JBPAPP-8585


Comment 23 Rostislav Svoboda 2012-04-18 13:24:53 UTC
Verified on EAP6 ER5

Only expected issues were found in test results.

Comment 24 Anne-Louise Tangring 2012-11-05 17:23:31 UTC
Release Notes Text: Removed: See comment at JBWS-3458 on how to setup properly IPv6 properties
for both AS7 & JBossWS test suite in our EAP branch. 
Docs QE Status: Removed: NEW 


Comment 25 Petr Sakař 2013-10-09 07:14:46 UTC
EAP 6.2.0.ER5 is using wrong SOAPConnectionFactory should use org.jboss.wsf.stack.cxf.saaj.SOAPConnectionFactoryImpl but is using com.sun.xml.internal.messaging.saaj.client.p2p HttpSOAPConnectionFactory from RI.
This factory can not be used in IPv6 environment and fails with respect to issue JBWS-3084
Workaround is to edit modules/system/layers/base/org/jboss/ws/saaj-impl/main/module.xml and
add "<module name="org.jboss.ws.jaxws-client" services="import"/>" as FIRST dependency. (MUST BE BEFORE <module name="com.sun.xml.messaging.saaj" services="import"/> !!!!)

The workaround still have to be tested and pass full test cycle and TCKs

Comment 26 Petr Sakař 2013-10-09 07:24:16 UTC
issue for RI bug related to IPv6 https://java.net/jira/browse/SAAJ-56

Comment 27 Petr Sakař 2013-10-09 08:08:47 UTC
the issue from comment#25 applies to EAP 6.1.1.GA as well

Comment 28 Alessio Soldano 2013-10-09 13:38:16 UTC
PR for fixing the EJB3ClientBusTestCase failure: https://github.com/jbossas/jboss-eap/pull/524

Comment 29 Petr Sakař 2013-10-17 08:01:17 UTC
verified workaroung from comment#25 is part of EAP
verified only expected failures related to https://github.com/adamfisk/LittleProxy/issues/30 (see comment#9) are present 
org.jboss.test.ws.jaxws.cxf.httpproxy.HTTPProxyTestCaseForked#testWSDLHttpProxy - Unexpected end of file from server 
org.jboss.test.ws.jaxws.cxf.httpproxy.HTTPProxyTestCaseForked#testHttpProxy - Could not send Message. 
org.jboss.test.ws.jaxws.cxf.httpproxy.HTTPProxyTestCaseForked#testHttpProxyUsingHTTPClientPolicy - Could not send Message.

Comment 30 Scott Mumford 2013-12-02 01:28:48 UTC
Unfortunately I'm not really able to understand the issue here other than IPv6 doesn't work. There seems to be a few different things happening (unless I'm misunderstanding. Again.)

To save time with the 6.2 GA date looming, I'm requesting a draft release note be added to the Doc Text field above including a description of the actual issue (as experienced by users) and how it was resolved (in as simple terms as practical) or a workaround for Known issues.

Thanks for any assistance Paul.


Note You need to log in before you can comment on or make changes to this bug.