Bild für Projekt hochgeladen: 'CXF'
  1. CXF
  2. CXF-5342

Letting to be absolute XSISchemaNamespace

Dateien anhängenScreenshot anhängenWähler anzeigenVorgang beobachtenBeobachter verwaltenUnteraufgabe erstellenVerknüpfungKlonenVerfasser des Kommenta...Zeichenfolge im Kommen...Update Comment VisibilityKommentare löschen
    XMLWordAusdruckbarJSON

    Details

    • Typ: Verbesserung
    • Status: Geschlossen
    • Priorität: Unwesentlich
    • Lösung: Behoben
    • betrifft Version(en): 2.7.7
    • Lösungsversion(en): 3.0.0-milestone1, 2.7.8
    • Komponente(n): JAX-RS
    • Stichwörter:
      Keine
    • Umgebung:

      Tomcat Spring

    • Estimated Complexity:
      Unknown

      Beschreibung

      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

        Anhänge

          Aktivität

          $i18n.getText('security.level.explanation', $currentSelection) Anzeigbar durch alle Benutzer
          Abbrechen

            Personen

            • Bearbeiter:
              sergey_beryozkin Sergey Beryozkin
              Autor:
              coenedens Alessandro Canevese

              Daten

              • Erstellt:
                Aktualisiert:
                Erledigt:

                Vorgangsbereitstellung