Uploaded image for project: 'CEF eDelivery'
  1. CEF eDelivery
  2. EDELIVERY-2930

Soap requests are not being validated by cxf

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Lowest
    • Resolution: Fixed
    • Affects Version/s: SML 3.1.2 Acceptance Release
    • Component/s: SML
    • Security Level: Anonymous (Anonymously accessed)
    • Labels:

      Description

      If we upgrade CXF Implementation to 3.2.1 version, soapui testcase SML042-Service Metadata services-Create SMP-badRequestFault , step Test 1 starts failing.

      By chance, it fails because the element *ServiceMetadataPublisherID * does not have namespace.

      <ServiceMetadataPublisherID>testSMPCreate42</ServiceMetadataPublisherID>
      

      This testcase tests the missing element PhysicalAddress, there is nothing to do with the ServiceMetadataPublisherID that should be as below instead

      <ns:ServiceMetadataPublisherID>testSMPCreate42</ns:ServiceMetadataPublisherID>
      

      NOTE:
      It seems the current version cxf 3.1.1 has a bug
      By default, CXF Implementation does not validate the schema because of performance reasons.
      All the cases below pass the request process and are stored in database, it is a bit weird.

      #No namespace
      <ServiceMetadataPublisherID>testSMPCreate42</ServiceMetadataPublisherID>
      
      #correct namespace
      <ns:ServiceMetadataPublisherID>testSMPCreate42</ns:ServiceMetadataPublisherID>
      
      #Wrong namespace
      <soapenv:ServiceMetadataPublisherID>testSMPCreate42<soapenv:ServiceMetadataPublisherID>
      

      Possible Solution
      Start validating schema, impact on users should be analyzed before actions

         <jaxws:endpoint id="manageServiceMetadata"
                          implementor="eu.europa.ec.bdmsl.ws.soap.impl.ManageServiceMetadataWSImpl"
                          address="/manageservicemetadata">
              <jaxws:properties>
                  <entry key="schema-validation-enabled" value="true"/>
              </jaxws:properties>
          </jaxws:endpoint>
          <jaxws:endpoint id="manageParticipantIdentifier"
                          implementor="eu.europa.ec.bdmsl.ws.soap.impl.ManageParticipantIdentifierWSImpl"
                          address="/manageparticipantidentifier">
              <jaxws:properties>
                  <entry key="schema-validation-enabled" value="true"/>
              </jaxws:properties>
          </jaxws:endpoint>
          <jaxws:endpoint id="bdmslService"
                          implementor="eu.europa.ec.bdmsl.ws.soap.impl.BDMSLServiceWSImpl"
                          address="/bdmslservice">
              <jaxws:properties>
                  <entry key="schema-validation-enabled" value="true"/>
              </jaxws:properties>
          </jaxws:endpoint>
      

        Gliffy Diagrams

          Attachments

            Container Issues

              Activity

                People

                • Assignee:
                  rihtajo Joze RIHTARSIC
                  Reporter:
                  rodrfla Flavio SANTOS
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:

                    Summary Panel

                      Time Tracking

                      Estimated:
                      Original Estimate - 2 days
                      2d
                      Remaining:
                      Remaining Estimate - 0 minutes
                      0m
                      Logged:
                      Time Spent - 2 days
                      2d