Bueno, acá publico un ejemplo simple de un Web Servicess que implementa spring, para levantar servicios virtuales, con una capa de datos también por inyección de código. Beh, ecco un semplice esempio di web pubblici Servicess che implementa una primavera per la costruzione virtuale di servizi, con uno strato di dati anche iniettato codice.
Son mis primeras experiencias, así que las quiero compartir con ustedes, las capas que tengo son: Essi sono la mia prima esperienza, in modo che voglio condividere con voi, ho gli strati sono:

Ahora les explico, no tiene gran funcionalidad este ejemplo, ya que solo lo hice para compartir… y no es para ningún desarrollo real. Adesso mi spieghi, che ha una grande funzionalità di questo esempio, perché l'ho fatto solo per parti ... e non per un reale sviluppo.
Tengo el Io

Sería el CommonTypes, el objeto que voy a transferir, para este caso no tiene mucho sentido, pero más adelante voy a mostrar como consumir un WS por spring.Net, y en este caso si es útil para saber que voy a recibir. CommonTypes sarebbe l'oggetto sto per trasferire, in questo caso non ha molto senso, ma poi mi mostra come consumare un WS spring.Net e, in caso affermativo, se è utile sapere che riceverà.
Así que es una clase sin nada en particular Quindi è una classe con niente in particolare

….. ... ..

En el DAO, defino las interfaces, así puedo tener un Sql Implementation, Oracle, Xml, lo que quisiera realmente, no hay ningún secreto por ahora. In DAO, definire le interfacce, in modo che io possa avere un Attuazione Sql, Oracle, XML, così ho veramente un segreto per nessuno per ora.
Ahora veamos las otras dos capas que nos quedan Adesso vediamo gli altri due strati che abbiamo

En Entitys, es una interfaz del WebServices… en este caso, es muy simple In Entitys è un'interfaccia WebServices ... in questo caso è molto semplice

Y en ServiceImplementation, simplemente hay que implementar y codificarlo. E ServiceImplementation solo di attuare e di codifica.

Bueno ahora vamos a ver, mas sobre este UserService… Bene ora si può vedere di più su questo ... UserService

Generamos estas propiedades, para asignarle por spring, una instancia del DAO, podría ser de sql, oracle, o lo que quisieran, mientras implementaran la interfaz … Eso es lo que ofrece spring.net Genera queste proprietà di assegnare entro la primavera, un 'istanza di DAO potrebbe essere SQL, Oracle, o quello che volevano, mentre si esegue il ... Questo è ciò che dà spring.net
En nuestro método, usamos este DAO que asignamos, para traer “x” dato. Nel nostro metodo, usiamo questo DAO che attribuiamo a portare una "x" dati.

Ahora, solo nos falta configurar el WebServices. Ora abbiamo solo bisogno di configurare il WebServices.

Generen, una carpeta “X”, con un Xml de configuración, en mi caso “Configuration”, y “webServices.xml”. Creare una cartella "X" con una configurazione XML, nel mio caso "Configurazione," e "webServices.xml.
En este mismo, tenemos que hacer todo el mapping In questo, dobbiamo fare la mappatura
<? xml <? Xml
version = “ 1.0 “ version = "1.0"
encoding = “ utf-8 “ ?> encoding = "utf-8"?>
< objects <Oggetti
xmlns = “ http://www.springframework.net “ > xmlns = "http://www.springframework.net">
< description > Servicios Expuestos </ description > Servizi <Description> Exposed </ description>
< object <Oggetto
id = “ UserServiceAsmx “ id = "UserServiceAsmx"
type = “ Synnax.Core.WS.UserAuthentication.ServiceImplementation.UserService, Synnax.Core.WS.UserAuthentication.ServiceImplementation “ > type = "Synnax.Core.WS.UserAuthentication.ServiceImplementation.UserService, Synnax.Core.WS.UserAuthentication.ServiceImplementation">
< property <Proprietà
name = “ IUser “ name = "IUser"
ref = “ UserDAO “ /> ref = "UserDAO" />
</ object > </ Object>
< object <Oggetto
id = “ UserDAO “ id = "UserDAO"
type = “ Synnax.Core.WS.UserAuthentication.DataAccess.SqlImplementation.UserImpl, Synnax.Core.WS.UserAuthentication.DataAccess.SqlImplementation “ /> type = "Synnax.Core.WS.UserAuthentication.DataAccess.SqlImplementation.UserImpl, Synnax.Core.WS.UserAuthentication.DataAccess.SqlImplementation" />
< object <Oggetto
id = “ UserServices “ id = "UserServices"
type = “ Spring.Web.Services.WebServiceExporter, Spring.Web “ > type = "Spring.Web.Services.WebServiceExporter, Spring.Web">
< property <Proprietà
name = “ TargetName “ name = "TargetName"
value = “ UserServiceAsmx “ /> value = "UserServiceAsmx" />
< property <Proprietà
name = “ Namespace “ name = "Namespace"
value = “ http://synnax/services/ “ /> value = "http://synnax/services/" />
< property <Proprietà
name = “ Description “ name = "Descrizione"
value = “ Web Service de Usuario “ /> value = "Web service utente" />
</ object > </ Object>
</ objects > </ Oggetti>
En sí, configuramos un objeto UserDAO , que apunta a la implementación del DAO que queremos, en este caso una para SqlServer, generamos un Objeto “ UserServiceAsmx “, que apunta a la implementación del WS, y como verán le asigno la propiedad IUser, que espera una implementación del DAO, en este caso el UserDAO que configuramos. In quanto tale, si configura un oggetto UserDAO, che punta alla realizzazione di DAO vogliamo, in questo caso per un SqlServer, abbiamo generato un Oggetto "UserServiceAsmx", che punta alla realizzazione di ERA e assegnare lo IUser proprietà, che In attesa della realizzazione di un DAO, in questo caso abbiamo stabilito UserDAO.
Y por ultimo generamos un “ UserServices ” que como Target tiene nuestro UserServiceAsmx , esto va a levantar un .asmx “virtual”, en este caso sería un UserServices.asmx. E, infine, creare un "UserServices" che ha come target la nostra UserServiceAsmx, sarà uno ascensore. Asmx "virtuali" in questo caso si tratta di un UserServices.asmx.
Bueno, como último paso, hay que configurar el Web.Config. Beh, come ultimo passo, è necessario configurare il Web.config.
< configuration > <configuration>
<!– Begin - Necesario para Spring.NET –> <! - Inizio - Necessario per Spring.NET ->
< configSections > <ConfigSections>
< sectionGroup <SectionGroup
name = “ spring “ > name = "primavera">
< section <Sezione
name = “ context “ name = "contesto"
type = “ Spring.Context.Support.WebContextHandler, Spring.Web “ /> type = "Spring.Context.Support.WebContextHandler, Spring.Web" />
</ sectionGroup > </ SectionGroup>
</ configSections > </ ConfigSections>
… ...
</ configuration > </ Configuration>
Esto siempre va, dentro de System.Web Questo sarà sempre, entro System.Web
< system.web > <system.web>
<!– Begin - Necesario para Spring.NET –> <! - Inizio - Necessario per Spring.NET ->
< httpHandlers > <httpHandlers>
< add <Aggiungi
verb = “ * “ verb = "*"
path = “ *.asmx “ path = "*. asmx"
type = “ Spring.Web.Services.WebServiceHandlerFactory, Spring.Web “ /> type = "Spring.Web.Services.WebServiceHandlerFactory, Spring.Web" />
</ httpHandlers > </ HttpHandlers>
< httpModules > <httpModules>
< add <Aggiungi
name = “ Spring “ name = "Primavera"
type = “ Spring.Context.Support.WebSupportModule, Spring.Web “ /> type = "Spring.Context.Support.WebSupportModule, Spring.Web" />
</ httpModules > </ HttpModules>
<!– End - Necesario para Spring.NET –> <! - Fine - Necessario per Spring.NET ->
… ...
</ system.web > </ System.web>
Es evidente que hace esto, levanta las peticiones que se hacen para los asmx, y el modulo correspondiente para manejar todo esto. E 'chiaro che questo pone le domande sono fatte per asmx e moduli per gestire tutto questo.
Y como final, después del nodo de system.web … E come finale dopo system.web nodo ...
</ system.web > </ System.web>
<!– Begin - Necesario para Spring.NET –> <! - Inizio - Necessario per Spring.NET ->
< spring > <Spring>
< context <Contesto
type = “ Spring.Context.Support.WebApplicationContext, Spring.Web “ > type = "Spring.Context.Support.WebApplicationContext, Spring.Web">
< resource <Resource
uri = “ ~/Configuration/webServices.xml “ /> uri = "~ / configurazione / webServices.xml" />
</ context > </ Context>
</ spring > </ Primavera>
<!– End - Necesario para Spring.NET –> <! - Fine - Necessario per Spring.NET ->
</ configuration > </ Configuration>
Le asignamos el archivo de configuración, al contexto que estamos usando. Noi assegnare il file di configurazione, il contesto che stiamo usando.
Levantan, y si tipean el nombre alias que apuntamos la implementación del WS, va a andar todo correctamente: Revocata e, se il nome tipean alias punta alla realizzazione di ERA, tutto andrà senza problemi:

Bueno, eso fue algo rápido, y que no tenía pensando publicarlo hoy, pero alguien me pidió un ejemplo. Beh, che era qualcosa di veloce e non ha mente di oggi, ma qualcuno mi ha chiesto un esempio.
Saludos. Saluti.
PD: No se olviden de meter todas las dependencias de spring.net, sino no va a andar nada! PS: Non dimenticare di mettere tutte le unità spring.net non ride, ma niente! Obvie esos pasos, porque son lógicos. Bypass questi passaggi, perché sono logico.
Share and Enjoy: Share and Enjoy: