Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-5342

Letting to be absolute XSISchemaNamespace

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 2.7.7
    • Fix Version/s: 3.0.0-milestone1, 2.7.8
    • Component/s: JAX-RS
    • Labels:
      None
    • Environment:

      Tomcat Spring

    • Estimated Complexity:
      Unknown

      Description

      Hi all. It's my first contribute to CXF. Maybe it has already been solved but I've not figured out how to obtain it.
      I need to have a xml produced with
      xsi:schemaLocation="john andrew".

      I've tried @XSISchemaLocation("john andrew") but you know it's rendered http://blabla/john%20andrew.

      I've tried to configure through the bean property schemaLocation in spring/cxf xml configuration file (for a bean of class org.apache.cxf.jaxrs.provider.JAXBElementProvider<T>), but I obtain that Spring fires an exception of operation not supported (maybe it would not work anyway).

      So, in the end, I've copied the class above and I made a class of my own changing the addSchemaLocation method as follows:

      private void addSchemaLocation(Marshaller ms, Annotation[] anns)
      throws Exception
      {
      XSISchemaLocation sl = AnnotationUtils.getAnnotation(anns,
      XSISchemaLocation.class);
      if (sl != null)

      { log.debug("It would produce " + buildAbsoluteXMLResourceURI(sl.value())); //String value = buildAbsoluteXMLResourceURI(sl.value()); log.debug("It produces instead" + sl.value()); String value = sl.value(); String propName = !sl.noNamespace() ? Marshaller.JAXB_SCHEMA_LOCATION : Marshaller.JAXB_NO_NAMESPACE_SCHEMA_LOCATION; ms.setProperty(propName, value); }

      }

      It's not the right way as it should be configured to have a choice on turning on/off absolute paths.

      Maybe in a future version it will be set?

      Thank you.
      Excuse me if it turns out it's not an appropriate post.

      Ciao
      Alessandro

        Attachments

          Activity

            People

            • Assignee:
              sergey_beryozkin Sergey Beryozkin
              Reporter:
              coenedens Alessandro Canevese
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: