javaee / metro-wsit

https://javaee.github.io/metro-wsit/
Other
9 stars 24 forks source link

MTOM Interop 109 EJB deployment errors - Path does not chain with any of the trust anchors #991

Open glassfishrobot opened 16 years ago

glassfishrobot commented 16 years ago

MTOM 3.5 Interop Tests - JSR 109 EJB deployment using metro 1.3 and GFV2ur2 seeing this error for JAXWSClient's (S->M) and IndigoClient (M->S):

Path does not chain with any of the trust anchors

for these tests:

Test Suite: mtom.​soap11signenc.​client.​JAXWSClient Methods: testEchoBinaryAsString fail Path does not chain with any of the trust anchors testEchoStringAsBinary fail Path does not chain with any of the trust anchors testEchoBinaryFieldAsString fail Path does not chain with any of the trust anchors testEchoBinaryArrayAsStringArray fail Path does not chain with any of the trust anchors

Test Suite: mtom.​soap11signonly.​client.​JAXWSClient Methods: testEchoBinaryAsString fail Path does not chain with any of the trust anchors testEchoBinaryFieldAsString fail Path does not chain with any of the trust anchors testEchoBinaryArrayAsStringArray fail Path does not chain with any of the trust anchors testEchoBinaryHeaderAsString fail Path does not chain with any of the trust anchors

Test Suite: mtom.​soap12utf8security.​client.​JAXWSClient Methods: testEchoBinaryAsString fail Path does not chain with any of the trust anchors testEchoStringAsBinary fail Path does not chain with any of the trust anchors testEchoBinaryFieldAsString fail Path does not chain with any of the trust anchors testEchoBinaryArrayAsStringArray fail Path does not chain with any of the trust anchors testEchoBinaryHeaderAsString fail Path does not chain with any of the trust anchors

Test Suite: mtom.​soap12utf8securityaug04.​client.​JAXWSClient Methods: testEchoBinaryAsString fail Path does not chain with any of the trust anchors testEchoStringAsBinary fail Path does not chain with any of the trust anchors testEchoBinaryFieldAsString fail Path does not chain with any of the trust anchors testEchoBinaryArrayAsStringArray fail Path does not chain with any of the trust anchors

and here is sample of error details for this last test suite:

Details for failed test/tests with errors:

testEchoBinaryAsString:

junit.framework.AssertionFailedError: Path does not chain with any of the trust anchors at junit.framework.Assert.fail(Assert.java:47) at mtom.soap12utf8securityaug04.client.JAXWSClient.testEchoBinaryAsString(JAXWSClient.java:70) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:164) at junit.framework.TestCase.runBare(TestCase.java:130) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:120) at junit.framework.TestSuite.runTest(TestSuite.java:230) at junit.framework.TestSuite.run(TestSuite.java:225) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:191) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:146) at org.netbeans.xtest.plugin.jvm.JUnitTestRunnerLauncher.main(JUnitTestRunnerLauncher.java:82)

testEchoStringAsBinary:

junit.framework.AssertionFailedError: Path does not chain with any of the trust anchors at junit.framework.Assert.fail(Assert.java:47) at mtom.soap12utf8securityaug04.client.JAXWSClient.testEchoStringAsBinary(JAXWSClient.java:89) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:164) at junit.framework.TestCase.runBare(TestCase.java:130) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:120) at junit.framework.TestSuite.runTest(TestSuite.java:230) at junit.framework.TestSuite.run(TestSuite.java:225) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:191) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:146) at org.netbeans.xtest.plugin.jvm.JUnitTestRunnerLauncher.main(JUnitTestRunnerLauncher.java:82)

testEchoBinaryFieldAsString:

junit.framework.AssertionFailedError: Path does not chain with any of the trust anchors at junit.framework.Assert.fail(Assert.java:47) at mtom.soap12utf8securityaug04.client.JAXWSClient.testEchoBinaryFieldAsString(JAXWSClient.java:111) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:164) at junit.framework.TestCase.runBare(TestCase.java:130) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:120) at junit.framework.TestSuite.runTest(TestSuite.java:230) at junit.framework.TestSuite.run(TestSuite.java:225) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:191) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:146) at org.netbeans.xtest.plugin.jvm.JUnitTestRunnerLauncher.main(JUnitTestRunnerLauncher.java:82)

testEchoBinaryArrayAsStringArray:

junit.framework.AssertionFailedError: Path does not chain with any of the trust anchors at junit.framework.Assert.fail(Assert.java:47) at mtom.soap12utf8securityaug04.client.JAXWSClient.testEchoBinaryArrayAsStringArray(JAXWSClient.java:140) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:164) at junit.framework.TestCase.runBare(TestCase.java:130) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:120) at junit.framework.TestSuite.runTest(TestSuite.java:230) at junit.framework.TestSuite.run(TestSuite.java:225) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:191) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:146) at org.netbeans.xtest.plugin.jvm.JUnitTestRunnerLauncher.main(JUnitTestRunnerLauncher.java:82)


IndigoClient (M->S) this seeing same error for these tests:


Details for failed test/tests with errors:

Soap11Utf8SecureSignOnly:EchoBinaryAsString:

junit.framework.AssertionFailedError: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ServiceModel.Security.MessageSecurityException: An unsecured or incorrectly secured fault was received from the other party. See the inner FaultException for the fault code and detail. ---> System.ServiceModel.FaultException: Path does not chain with any of the trust anchors — End of inner exception stack trace —

Server stack trace: at System.ServiceModel.Channels.SecurityChannelFactory1.SecurityRequestChannel.ProcessReply(Message reply, SecurityProtocolCorrelationState correlationState, TimeSpan timeout) at System.ServiceModel.Channels.SecurityChannelFactory1.SecurityRequestChannel.Request(Message message, TimeSpan timeout) at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs) at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) at IMtomTest.EchoBinaryAsString(Byte[] array) at MtomTestClient.EchoBinaryAsString(Byte[] array) — End of inner exception stack trace — at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams) at System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args) at Microsoft.Xws.Test.Suite.Util.WsdlTestUtilities.DynamicProxy.DynamicObject.CallMethod(String method, Object[] parameters) at XwsInterop.HostedClient.HostedClientSoapImpl.TestMtomMethods(DynamicProxy proxy, Boolean skipHeaderTest) at XwsInterop.HostedClient.HostedClientSoapImpl.runScenario(String featureName, String scenarioName, HostedClientParameter[] parameters)

at junit.framework.Assert.fail(Assert.java:47) at junit.framework.Assert.assertTrue(Assert.java:20) at indigoclient.IndigoMTOMClient.testMTOMClient(IndigoMTOMClient.java:65) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at junit.framework.TestCase.runTest(TestCase.java:164) at junit.framework.TestCase.runBare(TestCase.java:130) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:120) at junit.framework.TestSuite.runTest(TestSuite.java:230) at junit.framework.TestSuite.run(TestSuite.java:225) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:191) at org.netbeans.xtest.testrunner.JUnitTestRunner.runTests(JUnitTestRunner.java:146) at org.netbeans.xtest.plugin.jvm.JUnitTestRunnerLauncher.main(JUnitTestRunnerLauncher.java:82)

Here are the other tests that are seeing this error for IndigoClient (M->S):

Soap11Utf8SecureSignOnly:EchoStringAsBinary: Soap11Utf8SecureSignOnly:EchoBinaryArrayAsStringArray: Soap11Utf8SecureSignOnly:EchoBinaryFieldAsString: Soap11Utf8SecureSignOnly:EchoBinaryHeaderAsString: Soap11Utf8SecureSignEncrypt:EchoBinaryAsString: Soap11Utf8SecureSignEncrypt:EchoStringAsBinary: Soap11Utf8SecureSignEncrypt:EchoBinaryArrayAsStringArray: Soap11Utf8SecureSignEncrypt:EchoBinaryFieldAsString: Soap12Utf8WithSecurityEnabled:EchoBinaryAsString: Soap12Utf8WithSecurityEnabled:EchoStringAsBinary: Soap12Utf8WithSecurityEnabled:EchoBinaryArrayAsStringArray: Soap12Utf8WithSecurityEnabled:EchoBinaryFieldAsString: Soap12Utf8WithSecurityEnabled:EchoBinaryHeaderAsString:

Environment

Operating System: All Platform: Sun

Affected Versions

[1.3]

glassfishrobot commented 16 years ago

Reported by jbenoit@java.net

glassfishrobot commented 16 years ago

jbenoit@java.net said: Created an attachment (id=706) mtom_interop-ejb.log test4u log file

glassfishrobot commented 16 years ago

jbenoit@java.net said: Created an attachment (id=707) GF domain1 server.log file

glassfishrobot commented 16 years ago

jbenoit@java.net said: Created an attachment (id=708) test4u setup/installation log file

glassfishrobot commented 16 years ago

jbenoit@java.net said: Created an attachment (id=709) test4u xtest.properties files showing ports used, paths, properties, etc for run

glassfishrobot commented 16 years ago

ashutoshshahi@java.net said: This bug is filed every once in a while in MTOM. We have previously commented on this that it occurs because older and incorrect certificates are being used. We do not see any of the Security/Trust/SC 109 tests failing with this kind of error, which means it is MTOM setup issue. Last time we looked at a similar bug where test4u was using an existing glassfish installation, where certificates were not updated.

glassfishrobot commented 16 years ago

ashutoshshahi@java.net said: Looking at the attached test4u.log, I see that patch-gf-with-security (which updates certificates in glassfish keystores) target in install_gf_test4u.xml is not called. Marking it as a testcase issue

glassfishrobot commented 16 years ago

jbenoit@java.net said: I removed marker file (as David suggests below) on system t24u-1 (& t24u-2), to force a new installation of GF with updated security certifictes:

David R. wrote: "currently the only ways to force re-installing (includes back-up) of GF is either to ask for some rarely (not currently) used build type of GF in an intermittent testrun or to manually delete $

{AS_HOME}_backup/tango-info.marker text file - that holds installation info of the back-up and only if the data there differ from those requested by testrun (or the file is missing) does the framework attempt downloading new installer and install it. If this is then successful the new tango-info.marker is installed to backup as well.

I will try to add a convenient flag - you know if we simply state "use fresh copy" in composite test run then all the individual sub-ordinate test run will re-install it everytime. Which is a huge overload to servers especially in EMEA/IEC as the download is slow

You can use cat /dev/null > tango-info.marker && scp tango-info.marker Test4U@{server-ip-address}:${AS_HOME)_backup once you learn the ip-address (available in server details page of T4U) and ${AS_HOME}

_backup (available in logs or xtest.properties files for some test run) assuming you don't mind creation of the file on your local and that the appropriate username is Test4U for given server.

If I remember well, the timestamp of the marker file does not correspond to GF timestamp well or at least Java does not read it reliably so touching the file timestamp itself does not help as compared to changing last-modified entry in it.

P.S.: I am thinking of possible setting AS_HOME and similar values as late as in startup scripts of Test4U itself (Eman provided for running every script in $TEST4U_HOME/local/bin automatically prior to starting slave framework once ago). That would mean we'd need to ensure something like export AS_HOME=... would be on every server in literal value; in fact we can change environment variables for any slave dynamically by putting/changing values in these setup scripts and restarting slave - the only trouble is that it is not transparent as it overrides user environment you get when you log in. Then also the value of AS_HOME could be read directly through SSH. Linking user environmental setup script in /etc/profile** to $TEST4U_HOME/local/bin (or sourcing the target if existent) would make sense to fix it. ( Would need to include [-f "$TEST4U_HOME/local/bin/Test4U_dyn.sh"] && \ . "$TEST4U_HOME/local/bin/Test4U_dyn.sh" assuming "$TEST4U_HOME/local/bin/Test4U_dyn.sh" is the name of T4U custom startup script in the user env. setup scripts on the slaves. )

Martin M. wrote: Glassfish backup is only used if it contains the same version of GF that your testrun indicates it needs. I.e. if there are 5 consequent testruns each one requiring GFv2ur2, first one would install a fresh copy (unless gf_backup already contained that version) and the subsequent ones would just use the backup afterwards. But, if one of the five would require a different version of GF, it would simply do a fresh reinstall.

glassfishrobot commented 16 years ago

jbenoit@java.net said: upgrading to p2 from p3, as Harold confirmed that all Interop bugs should be filed at p2 level. for release that is integrated into GF, all p1-p3 need to be addressed or waived, but this is not the case for standalone release that is not integrated into and released as part of GF. for standalone release, the criteria is no p1 bugs, so even though bug is filed at p2, it still doesn't require a waiver to meet release criteria and give a "GO" instead of "NO-GO" vote for release.

glassfishrobot commented 12 years ago

snajper said: Sreekanth, is this issue still valid?

glassfishrobot commented 16 years ago

File: server.log Attached By: jbenoit@java.net

glassfishrobot commented 16 years ago

File: tango_qe-tests_mtom_interop-ejb.log Attached By: jbenoit@java.net

glassfishrobot commented 16 years ago

File: test4u.log Attached By: jbenoit@java.net

glassfishrobot commented 16 years ago

File: xtest.properties Attached By: jbenoit@java.net

glassfishrobot commented 16 years ago

Was assigned to msreekanth

glassfishrobot commented 7 years ago

This issue was imported from java.net JIRA WSIT-991