На главнуюКонтактыКарта сайта

Размещение Java программ

Как создать Java web-сервис?

Вы можете организовать web-сервис на основе технологии Java(TM) API for XML Messaging (JAXM).

Для работы сервиса необходимы библиотеки для поддержки JAXM (архив библиотек), которые надо скопировать в папку /WEB-INF/lib/ приложения. Пример сервлета, реализующего сервис на основе JAXM, приведен ниже:

import javax.xml.soap.*;
import javax.xml.messaging.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class SOAPServiceServlet extends JAXMServlet  implements ReqRespListener
{
      
    public void init() {
        try {
            if(this.msgFactory == null){
                this.setMessageFactory(MessageFactory.newInstance());
            }
        } catch (Exception e) {
            log("init error",e);
        }
    }     
    
    public SOAPMessage onMessage(SOAPMessage message) {
        try {
            SOAPMessage response =  msgFactory.createMessage();
            SOAPEnvelope envelope = response.getSOAPPart().getEnvelope();
            SOAPBody body = envelope.getBody();
            body.addTextNode("Hello!");
            return(response);
        } catch(Exception e) {
            log("Error in processing or replying to a message", e);
            return(null);
        }
    }
    
}

Пример клиента использующего технологию JAXM для взаимодействия с сервисом:
import java.net.URL;
import javax.xml.soap.MessageFactory;
import javax.xml.soap.SOAPConnection;
import javax.xml.soap.SOAPConnectionFactory;
import javax.xml.soap.SOAPMessage;

public class JAXMClient {
	public static void main(String[] args) throws Exception {
		SOAPConnectionFactory scf = SOAPConnectionFactory.newInstance();
		SOAPConnection con = scf.createConnection();
		MessageFactory mf = MessageFactory.newInstance();
		SOAPMessage msg = mf.createMessage();
		URL urlEndpoint = new URL("http://mysite.brim.ru/TestJAXM/servlet/SOAPServiceServlet");
		SOAPMessage reply = con.call(msg, urlEndpoint);
		System.out.println(reply.getSOAPBody().getTextContent());
	}
}

Полезные ссылки:

Java API for XML Messaging (JAXM)
SOAP Clients and Services Using SAAJ and JAXM

Служба поддержки:
E-Mail: support@brim.ru
Тел.: (495) 517-70-64
Адрес:
115419, г. Москва,
ул. Орджоникидзе, д.11, стр.11,
бизнес-центр «АВС-Эстэйт»