This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 100659 - XSLT service of the filter request-reply type doesn't work
Summary: XSLT service of the filter request-reply type doesn't work
Status: CLOSED INVALID
Alias: None
Product: soa
Classification: Unclassified
Component: XSLT (show other bugs)
Version: 6.x
Hardware: PC All
: P2 blocker (vote)
Assignee: Vitaly Bychkov
URL:
Keywords: RELNOTE
Depends on:
Blocks:
 
Reported: 2007-04-11 19:26 UTC by Andrei Chistiakov
Modified: 2007-09-19 15:48 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
Test projects (101.24 KB, application/x-compressed)
2007-04-11 19:27 UTC, Andrei Chistiakov
Details
corrected project (was tested on xslt_se (build numbers: 200704182238, 20070409)) (83.23 KB, application/x-compressed)
2007-04-23 16:54 UTC, Vitaly Bychkov
Details
sample projects (98.93 KB, application/octet-stream)
2007-07-24 16:22 UTC, Andrei Chistiakov
Details
Output of the test (6.63 KB, text/plain)
2007-07-24 16:23 UTC, Andrei Chistiakov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andrei Chistiakov 2007-04-11 19:26:53 UTC
Reproduced in build 200704101900.

To reproduce the bug:
- open the attached projects;
- deploy CompositeApp10 and run TestCase1.

The following output generates:
<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
  <S:Body>
    <ns2:Fault xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns3="http://www.w3.org/2003/05/soap-envelope">
      <faultcode>ns2:Server</faultcode>
      <faultstring>javax.jbi.messaging.MessagingException: Failed to denormalize
input.</faultstring>
      <detail>
        <ns2:exception xmlns:ns2="http://jax-ws.dev.java.net/"
class="java.lang.RuntimeException" note="To disable this feature, set
com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system property
to false">
          <message>javax.jbi.messaging.MessagingException: Failed to denormalize
input.</message>
          <ns2:stackTrace>
            <ns2:frame
class="com.sun.xml.ws.server.provider.AsyncProviderInvokerTube$AsyncProviderCallbackImpl"
file="AsyncProviderInvokerTube.java" line="100" method="sendError"/>
            <ns2:frame
class="com.sun.jbi.httpsoapbc.jaxwssupport.AsyncJBIProvider"
file="AsyncJBIProvider.java" line="253" method="onReply"/>
            <ns2:frame class="com.sun.jbi.httpsoapbc.MessageExchangeSupport"
file="MessageExchangeSupport.java" line="90" method="notifyOfReply"/>
            <ns2:frame class="com.sun.jbi.httpsoapbc.OutboundMessageProcessor"
file="OutboundMessageProcessor.java" line="194"
method="processRequestReplyInbound"/>
            <ns2:frame class="com.sun.jbi.httpsoapbc.OutboundMessageProcessor"
file="OutboundMessageProcessor.java" line="160" method="processMessage"/>
            <ns2:frame class="com.sun.jbi.httpsoapbc.OutboundAction"
file="OutboundAction.java" line="57" method="run"/>
            <ns2:frame class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="650" method="runTask"/>
            <ns2:frame class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="675" method="run"/>
            <ns2:frame class="java.lang.Thread" file="Thread.java" line="595"
method="run"/>
          </ns2:stackTrace>
          <ns2:cause class="javax.jbi.messaging.MessagingException" note="To
disable this feature, set
com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system property
to false">
            <message>Failed to denormalize input.</message>
            <ns2:stackTrace>
              <ns2:frame
class="com.sun.jbi.httpsoapbc.jaxwssupport.JAXWSDenormalizer"
file="JAXWSDenormalizer.java" line="84" method="denormalize"/>
              <ns2:frame
class="com.sun.jbi.httpsoapbc.jaxwssupport.AsyncJBIProvider"
file="AsyncJBIProvider.java" line="190" method="onReply"/>
              <ns2:frame class="com.sun.jbi.httpsoapbc.MessageExchangeSupport"
file="MessageExchangeSupport.java" line="90" method="notifyOfReply"/>
              <ns2:frame class="com.sun.jbi.httpsoapbc.OutboundMessageProcessor"
file="OutboundMessageProcessor.java" line="194"
method="processRequestReplyInbound"/>
              <ns2:frame class="com.sun.jbi.httpsoapbc.OutboundMessageProcessor"
file="OutboundMessageProcessor.java" line="160" method="processMessage"/>
              <ns2:frame class="com.sun.jbi.httpsoapbc.OutboundAction"
file="OutboundAction.java" line="57" method="run"/>
              <ns2:frame class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="650" method="runTask"/>
              <ns2:frame class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="675" method="run"/>
              <ns2:frame class="java.lang.Thread" file="Thread.java" line="595"
method="run"/>
            </ns2:stackTrace>
            <ns2:cause class="javax.jbi.messaging.MessagingException" note="To
disable this feature, set
com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system property
to false">
              <message>Failed to denormalize message The WSDL message definition
filterRRServiceOperationReply does not match the name of the message wrapper of
the normalized message (RequestReplyServiceOperationReply)</message>
              <ns2:stackTrace>
                <ns2:frame class="com.sun.jbi.httpsoapbc.SoapDenormalizer"
file="SoapDenormalizer.java" line="201" method="denormalize"/>
                <ns2:frame
class="com.sun.jbi.httpsoapbc.jaxwssupport.JAXWSDenormalizer"
file="JAXWSDenormalizer.java" line="79" method="denormalize"/>
                <ns2:frame
class="com.sun.jbi.httpsoapbc.jaxwssupport.AsyncJBIProvider"
file="AsyncJBIProvider.java" line="190" method="onReply"/>
                <ns2:frame class="com.sun.jbi.httpsoapbc.MessageExchangeSupport"
file="MessageExchangeSupport.java" line="90" method="notifyOfReply"/>
                <ns2:frame
class="com.sun.jbi.httpsoapbc.OutboundMessageProcessor"
file="OutboundMessageProcessor.java" line="194"
method="processRequestReplyInbound"/>
                <ns2:frame
class="com.sun.jbi.httpsoapbc.OutboundMessageProcessor"
file="OutboundMessageProcessor.java" line="160" method="processMessage"/>
                <ns2:frame class="com.sun.jbi.httpsoapbc.OutboundAction"
file="OutboundAction.java" line="57" method="run"/>
                <ns2:frame
class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="650" method="runTask"/>
                <ns2:frame
class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="675" method="run"/>
                <ns2:frame class="java.lang.Thread" file="Thread.java"
line="595" method="run"/>
              </ns2:stackTrace>
              <ns2:cause
class="com.sun.jbi.nms.wsdl11wrapper.WrapperProcessingException" note="To
disable this feature, set
com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system property
to false">
                <message>The WSDL message definition
filterRRServiceOperationReply does not match the name of the message wrapper of
the normalized message (RequestReplyServiceOperationReply)</message>
                <ns2:stackTrace>
                  <ns2:frame
class="com.sun.jbi.nms.wsdl11wrapper.impl.WrapperParserImpl"
file="WrapperParserImpl.java" line="106" method="parse"/>
                  <ns2:frame class="com.sun.jbi.httpsoapbc.SoapDenormalizer"
file="SoapDenormalizer.java" line="179" method="denormalize"/>
                  <ns2:frame
class="com.sun.jbi.httpsoapbc.jaxwssupport.JAXWSDenormalizer"
file="JAXWSDenormalizer.java" line="79" method="denormalize"/>
                  <ns2:frame
class="com.sun.jbi.httpsoapbc.jaxwssupport.AsyncJBIProvider"
file="AsyncJBIProvider.java" line="190" method="onReply"/>
                  <ns2:frame
class="com.sun.jbi.httpsoapbc.MessageExchangeSupport"
file="MessageExchangeSupport.java" line="90" method="notifyOfReply"/>
                  <ns2:frame
class="com.sun.jbi.httpsoapbc.OutboundMessageProcessor"
file="OutboundMessageProcessor.java" line="194"
method="processRequestReplyInbound"/>
                  <ns2:frame
class="com.sun.jbi.httpsoapbc.OutboundMessageProcessor"
file="OutboundMessageProcessor.java" line="160" method="processMessage"/>
                  <ns2:frame class="com.sun.jbi.httpsoapbc.OutboundAction"
file="OutboundAction.java" line="57" method="run"/>
                  <ns2:frame
class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="650" method="runTask"/>
                  <ns2:frame
class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="675" method="run"/>
                  <ns2:frame class="java.lang.Thread" file="Thread.java"
line="595" method="run"/>
                </ns2:stackTrace>
              </ns2:cause>
            </ns2:cause>
          </ns2:cause>
        </ns2:exception>
      </detail>
    </ns2:Fault>
  </S:Body>
</S:Envelope>
Comment 1 Andrei Chistiakov 2007-04-11 19:27:27 UTC
Created attachment 40768 [details]
Test projects
Comment 2 Vitaly Bychkov 2007-04-23 16:41:29 UTC
First of all the attached project has one mistake:
   the stylesheet newxslfile2.xsl from FilterRR project thransforms element
fullName into fullName instead greetings.

Any way the project with corrected stylesheet has the same error.

I've found that project is working if input messages for
FilterRRServicePortTypeRole endpoint and RequestReplyServicePortTypeRole
endpoint have the same names (e.g. FilterRRServiceOperationRequest) and the same
thing required for output messages (FilterRRServiceOperationReply).

I guess that the issue could be in the xslt engine implementation.


Corrected(the project with renamed messages and corrected stylesheet) project is
in attachment.

Comment 3 Vitaly Bychkov 2007-04-23 16:54:08 UTC
Created attachment 41479 [details]
corrected project (was tested on xslt_se (build numbers: 200704182238, 20070409))
Comment 4 Sergey Lunegov 2007-04-24 06:47:55 UTC
this is runtime issue. But I'll keep this bug open to track it.
Comment 5 Dmitry Markovski 2007-04-26 15:31:01 UTC
For the RN:

The Service Bridge type of the XSLT Service that is configured to transform 
both requests and replies returns the "Failed to denormalize input" fault if 
the names for input and output messages in the service WSDL file are different 
from the corresponding message names in the service it calls.

Workaround: configure your XSLT service to use the same message names as the 
service it exchanges messages with.
Comment 6 astashkova 2007-04-27 12:15:49 UTC
Added to NB IDE 6.0 Preview RNs as follows:

Issue #100659: The Service Bridge type of the XSLT Service that is configured to
transform both requests and replies returns the &quot;Failed to denormalize
input&quot; fault message.

Description: The Service Bridge type of the XSLT Service that is configured to
transform 
both requests and replies returns the &quot;Failed to denormalize input&quot;
fault message if 
the names for input and output messages in the service WSDL file are different 
from the corresponding message names in the service it calls.

Workaround: Configure your XSLT service to use the same message names as the 
service it exchanges messages with.
Comment 7 Sergey Lunegov 2007-07-10 15:45:04 UTC
Philipp,
please verify
Comment 8 Andrei Chistiakov 2007-07-24 16:20:37 UTC
FRR service still doesn't work. Please find the newly created sample projects along with test output in attachment.


Comment 9 Andrei Chistiakov 2007-07-24 16:22:14 UTC
Created attachment 45599 [details]
sample projects
Comment 10 Andrei Chistiakov 2007-07-24 16:23:14 UTC
Created attachment 45600 [details]
Output of the test
Comment 11 Vitaly Bychkov 2007-07-27 14:39:19 UTC
The server log has the next lines:

##############################################
[#|2007-07-27T16:08:49.953+0400|INFO|sun-appserver9.1|sun-xslt-engine.com.sun.jbi.component.lifecycle.impl.DefaultServiceUnitManager|_ThreadID=68;_ThreadName=CompositeApp3-fRR;|Initializing
SU "CompositeApp3-fRR" at root path:
C:\Sun\glassfish-v2-b57\domains\domain1\jbi\service-assemblies\CompositeApp3\CompositeApp3-fRR\sun-xslt-engine|#]

[#|2007-07-27T16:08:50.015+0400|INFO|sun-appserver9.1|sun-xslt-engine.com.sun.jbi.component.lifecycle.impl.DefaultServiceUnitManager|_ThreadID=68;_ThreadName=CompositeApp3-fRR;|Endpoint
activated:         Endpoint Type: Internal
          Owner:     sun-xslt-engine  Active: True
          Service:   {http://j2ee.netbeans.org/wsdl/fRRWSDL}fRRWSDL1
          Endpoint:  fRRWSDLPortTypeRole
|#]

[#|2007-07-27T16:08:50.015+0400|SEVERE|sun-appserver9.1|sun-xslt-engine.com.sun.jbi.engine.xslt.endpoint.XsltseEndpointManager|_ThreadID=68;_ThreadName=CompositeApp3-fRR;_RequestID=25bcefa6-75d2-42c4-b024-6746b2692096;|XSLT
SE endpoint "rrWSDLPortTypeRole" is missing from descriptor in service unit: CompositeApp3-fRR|#]

[#|2007-07-27T16:08:50.031+0400|SEVERE|sun-appserver9.1|sun-xslt-engine.com.sun.jbi.component.lifecycle.impl.DefaultServiceUnitManager|_ThreadID=68;_ThreadName=CompositeApp3-fRR;_RequestID=25bcefa6-75d2-42c4-b024-6746b2692096;|Service
unit "CompositeApp3-fRR" init failed: XSLT SE endpoint "rrWSDLPortTypeRole" is missing from descriptor in service unit:
CompositeApp3-fRR
javax.jbi.management.DeploymentException: XSLT SE endpoint "rrWSDLPortTypeRole" is missing from descriptor in service
unit: CompositeApp3-fRR
        at com.sun.jbi.engine.xslt.endpoint.XsltseEndpointManager.error(XsltseEndpointManager.java:172)
        at com.sun.jbi.engine.xslt.endpoint.XsltseEndpointManager.createEndpoint(XsltseEndpointManager.java:97)
        at com.sun.jbi.component.lifecycle.impl.AbstractServiceUnitManager.init(AbstractServiceUnitManager.java:171)
        at com.sun.jbi.framework.ServiceUnitOperation.process(ServiceUnitOperation.java:167)
        at com.sun.jbi.framework.Operation.run(Operation.java:104)
        at java.lang.Thread.run(Thread.java:619)
|#]
######################################################
But the jbi.xml looks good.

Kevan could you please look at it from runtime side.

Comment 12 kevan1138 2007-07-30 19:04:49 UTC
The transformmap.xml was not properly configured per the latest transformmap schema.  Per Tools team request, the
"invoke" element does not have an 's' at the end.  Therefore, the invoke activity was not executing and the subsequent
transform activity failed.  I did not see the errors described by other posters.

Marking as invalid.  Test case passed when transformmap.xml was corrected.