Giter Site home page Giter Site logo

parer-ping-xml's Introduction

Ping XML

Fonte template redazione documento: https://www.makeareadme.com/.

Descrizione

Il seguente progetto è utilizzato come dipendenza interna per definire i modelli "xsd" che via Jaxb permettono di generare le relative classi Java (marshalling & unmarshalling), è utilizzato quindi come libreria/dipendenza Maven (https://maven.apache.org/), dalle seguenti applicazioni: Ping.

Installazione

Come già specificato nel paragrafo precedente [Descrizione](# Descrizione) si tratta di un progetto di tipo "libreria", quindi un modulo applicativo utilizzato attraverso la definzione della dipendenza Maven secondo lo standard previsto (https://maven.apache.org/):

<dependency>
  <groupId>it.eng.parer</groupId>
  <artifactId>preingest-xml</artifactId>
  <version>$VERSIONE</version>
</dependency>

Utilizzo

Il modulo contiene al suo interno le principali definizioni dei modelli XML utilizzi in vari contesti applicativi, su cui viene effettuata una validazione sintattico/semenatica attraverso uno standard XSD (https://www.w3.org/TR/xmlschema11-1/) localizzabili nella directory src/main/resources/xsd. Inoltre, attraverso JAXB (https://javaee.github.io/jaxb-v2/) è possibile effettuare le opportune operazioni di marshalling e unmarshilling al fine di ottenere in un caso a paritre dall'XML un oggetto Java e viceversa. Per ottenere gli oggetti a partire dall'XSD si utilizza un apposito plug-in maven (https://mvnrepository.com/artifact/org.codehaus.mojo/jaxb2-maven-plugin/1.6) così definito su pom.xml:

<plugin>
	<groupId>org.codehaus.mojo</groupId>
	<artifactId>jaxb2-maven-plugin</artifactId>
	<version>1.6</version>
</plugin>

Gli xsd permettono quindi di modellare dinamicamente gli oggetti utilizzati nell'ambito dei servizi (REST/SOAP) esposti dalla web application ping. Di seguito l'organizzazione in folder e sotto-folder declinate sul singolo servizio:

src/main/resources/xsd/it/eng/sacerasi/sisma/xml/invioSisma
└── InvioSisma.xsd
src/main/resources/xsd/it/eng/sacerasi/su/xml/invioSU
└── InvioSU.xsd
src/main/resources/xsd/it/eng/sacerasi/ws/xml/datiSpecDicom
└── WSMetadatiSpecificiDICOM.xsd
src/main/resources/xsd/it/eng/sacerasi/ws/xml/datiSpecFiltri
└── WSDatiSpecificiDiarioFiltri.xsd
src/main/resources/xsd/it/eng/sacerasi/ws/xml/datiSpecOrder
└── WSDatiSpecificiDiarioOrder.xsd
src/main/resources/xsd/it/eng/sacerasi/ws/xml/datiSpecOut
└── WSDatiSpecificiDiarioOut.xsd
src/main/resources/xsd/it/eng/sacerasi/ws/xml/datiSpecResult
└── WSDatiSpecificiDiarioResult.xsd
src/main/resources/xsd/it/eng/sacerasi/ws/xml/invioAsync
└── WSInvioAsync.xsd
src/main/resources/xsd/it/eng/sacerasi/ws/xml/invioDaTrasf
└── WSInvioDaTrasf.xsd

In alcuni ambiti sono stati definiti, secondo lo standard JAXB, delle customizzazioni in termini di mapping dei dati / namespace, attraverso la definizone di XJB (https://docs.oracle.com/cd/E17802_01/webservices/webservices/docs/1.5/tutorial/doc/JAXBUsing4.html), questo al fine di ottere le personalizzazioni necessarie per l'implementazione degli applicativi che utilizzeranno i modelli Java generati.

Supporto

Mantainer del progetto è Engineering Ingegneria Informatica S.p.A..

Contributi

Se interessati a crontribuire alla crescita del progetto potete scrivere all'indirizzo email [email protected].

Credits

Progetto di proprietà di Regione Emilia-Romagna sviluppato a cura di Engineering Ingegneria Informatica S.p.A..

Licenza

Questo progetto è rilasciato sotto licenza GNU Affero General Public License v3.0 or later (LICENSE.txt).

parer-ping-xml's People

Contributors

sinattieng avatar actions-user avatar

Watchers

Tassoman avatar Giovanni Grazia avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.