Blogg
Här finns tekniska artiklar, presentationer och nyheter om arkitektur och systemutveckling. Håll dig uppdaterad, följ oss på LinkedIn
Här finns tekniska artiklar, presentationer och nyheter om arkitektur och systemutveckling. Håll dig uppdaterad, följ oss på LinkedIn
Arun Gipta - spec lead för JAX-WS presenterade WSIT - Suns tillägg till deras implementation av JAX-WS-specifikationen. JAX-WS är Javaplattformens standard för Web Services och XML-bindning fr.o.m. Java EE 5 och Java SE 5. JAX-WS-standarden täcker än så länge bara de WS-standards som profilerats av WS-I. Det är förstås på goda grunder. Användning av WS-*-standards utöver de få som WS-I hunnit profilera, innebär stora interoperabilitetsrisker.
WSIT - WebServices Interoperability Technology - syftar till att forcera interoperablitet mellan Suns JAX-WS implementation och Microsoft .Net web services för samtliga web-service specifikationer som stöds av .Net Windows Communication Framework version 3.0, även om WS-I ej profilerat dessa specifikationer.
Har jag någon nytta av detta om jag använder någon annan applikationsserver än Glassfish / Sun AS? För att dra nytta av WS-IT, måste man använda hela JAX-WS istället för den web-service-stack som följer med applikationservern . Det låter sig dock göras, t.ex. med WebSphere 6.1. Eftersom JAX-WS kräver Java SE 5, måste förstås applikationsservern stödja denna Java-version.
WSIT tillför interoperabilitet för följande WS-relaterade features:
Inget av detta påverkar programmeringsmodellen för JAXB-WS, utan hanteras via en WSIT-specifik konfigurationsfil som ska finnas i WEB-INF-katalogen eller i META-INF-katalogen (för EJB-baserade WebServices).
Som exempel på “osynlighet” i koden, användes WS-AtomicTransaction. Med WSIT integreras WebService-baserade distribuerade transaktioner med container-transaktioner via EJB-baserade web-services. Givet att den WSIT-specifika deployment-descriptorn finns i EJB-jar:ens META-INF och där anger att den publicerade ENDPOINT:en ska ha stöd för WS-AtomicTransaction, behöver inget speciellt göras i koden, mer än att på standardiserat sätt ange att EJB:n ska vara en WS-endpoint:
@javax.jws.WebService
@javax.ejb.Stateless
@javax.ejb.TransactionManagement(CONTAINER)
public class Wirer {
@javax.jws.WebMethod
@javax.ejb.TransactionAttribute(REQUIRED)
void wireFunds(...) throws ... {
websrvc1.withdrawFromBankX(...);
websrvc2.depositIntoBankY(...);
}
}
WSIT planeras få produktionsstatus i samband med release av Suns glassfish-baserade JavaEE 5-server Sun AS 9.1 - någon gång under 2007. För att testa, laddar man enklast hem Netbeans Enterprise Pack 5.5.1 Beta, enligt instruktioner i tidigare blog om Open ESB.