Skip to content

Commit a39e353

Browse files
committed
6_5_web_services
1 parent 6255b20 commit a39e353

File tree

6 files changed

+95
-0
lines changed

6 files changed

+95
-0
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package ru.javaops.masterjava.service.mail;
2+
3+
import lombok.AllArgsConstructor;
4+
import lombok.Data;
5+
import lombok.NoArgsConstructor;
6+
7+
/**
8+
* gkislin
9+
* 15.11.2016
10+
*/
11+
@Data
12+
@AllArgsConstructor
13+
@NoArgsConstructor
14+
public class Addressee {
15+
private String email;
16+
private String name;
17+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package ru.javaops.masterjava.service.mail;
2+
3+
import javax.jws.WebMethod;
4+
import javax.jws.WebParam;
5+
import javax.jws.WebService;
6+
import java.util.List;
7+
8+
/**
9+
* gkislin
10+
* 15.11.2016
11+
*/
12+
@WebService
13+
public interface MailService {
14+
15+
@WebMethod
16+
void sendMail(
17+
@WebParam(name = "to") List<Addressee> to,
18+
@WebParam(name = "cc") List<Addressee> cc,
19+
@WebParam(name = "subject") String subject,
20+
@WebParam(name = "body") String body);
21+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package ru.javaops.masterjava.service.mail;
2+
3+
import lombok.extern.slf4j.Slf4j;
4+
5+
import java.util.List;
6+
7+
@Slf4j
8+
public class MailSender {
9+
static void sendMail(List<Addressee> to, List<Addressee> cc, String subject, String body) {
10+
log.info("Send mail to \'" + to + "\' cc \'" + cc + "\' subject \'" + subject + (log.isDebugEnabled() ? "\nbody=" + body : ""));
11+
}
12+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
package ru.javaops.masterjava.service.mail;
2+
3+
import javax.jws.WebService;
4+
import java.util.List;
5+
6+
@WebService(endpointInterface = "ru.javaops.masterjava.service.mail.MailService")
7+
public class MailServiceImpl implements MailService {
8+
public void sendMail(List<Addressee> to, List<Addressee> cc, String subject, String body) {
9+
MailSender.sendMail(to, cc, subject, body);
10+
}
11+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package ru.javaops.masterjava.service.mail;
2+
3+
import com.google.common.collect.ImmutableList;
4+
5+
import javax.xml.namespace.QName;
6+
import javax.xml.ws.Service;
7+
import java.net.MalformedURLException;
8+
import java.net.URL;
9+
10+
public class MailServiceClient {
11+
12+
public static void main(String[] args) throws MalformedURLException {
13+
Service service = Service.create(
14+
new URL("http://localhost:8080/mail/mailService?wsdl"),
15+
new QName("http://mail.service.masterjava.javaops.ru/", "MailServiceImplService"));
16+
17+
MailService mailService = service.getPort(MailService.class);
18+
mailService.sendMail(ImmutableList.of(new Addressee("masterjava@javaops.ru", null)), null, "Subject", "Body");
19+
}
20+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package ru.javaops.masterjava.service.mail;
2+
3+
import javax.xml.ws.Endpoint;
4+
5+
/**
6+
* User: gkislin
7+
* Date: 28.05.2014
8+
*/
9+
public class MailServicePublisher {
10+
11+
public static void main(String[] args) {
12+
Endpoint.publish("http://localhost:8080/mail/mailService", new MailServiceImpl());
13+
}
14+
}

0 commit comments

Comments
 (0)