티스토리 뷰
Apache CXF : http://cxf.apache.org
위의 Apache CXF 홈페이지를 방문하면 다운로드 뿐만 아니라 좀 더 자세한 정보를 알아 낼 수 있다.
Apache AXIS : http://axis.apache.org/axis2/java/core/
AXIS 역시 홈페이지를 방문하면 Install 가이드 및 자세한 정보를 확인 할 수 있다.
Apache CXF 설치
Eclipse에서 Maven Project를 생성 후 Pom.xml에 Apache CXF 를 추가한다.
환경설정
Web.xml에 다음과 같이 Servlet을 추가합니다.
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>SimpleJaxs</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/beans.xml</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<servlet>
<servlet-name>CXFServlet</servlet-name>
<servlet-class>
org.apache.cxf.transport.servlet.CXFServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CXFServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
web.xml 환경설정이 끝나면 beans.xml를 생성한다.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxrs="http://cxf.apache.org/jaxrs"
xmlns:cxf="http://cxf.apache.org/core"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxrs
http://cxf.apache.org/schemas/jaxrs.xsd
http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd">
<import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml" />
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
<jaxrs:server id="CxfService" address="/Service">
<jaxrs:serviceBeans>
<ref bean="DemoBean" />
</jaxrs:serviceBeans>
</jaxrs:server>
<bean id="DemoBean" class="demo.jaxrs.server. DemoCxf " />
Server 프로그램 샘플
그럼 이번에는 Server Program 를 생성해 보도록 하겠다.
package demo.jaxrs.server;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;
public class
DemoCxf {
@GET
@Path("/getMsg/{gubun}")
public String getMsg(@PathParam("gubun") String _gubun)
{
return "hi"+ _gubun;
}
@POST
@Path("/AddData/{gubun}/{data}")
public String addData(@PathParam("gubun") String _gubun, @PathParam("data") String _data)
{
String data = _data;
return "true";
}
}
Client 프로그램 샘플
Server 프로그램을 생성했으면 Client 프로그램을 생성해야 한다.
import org.apache.cxf.jaxrs.client.WebClient;
public class DemoCxfClient {
public String getMsgClient( String serverUrl)
{
WebClient client = WebClient.create(serverUrl);
String gubun = "1";
String result = client.path("/CxfService/DemoCxf/getMsg").accept("application/xml").get(gubun);
return result;
}
public String addDataClient( String serverUrl, String data)
{
WebClient client = WebClient.create(serverUrl);
String gubun = "1";
String data = "test_data";
String result = client.path("/CxfService/DemoCxf/addDataClient").accept("application/xml").post(gubun, data);
return result;
}
샘플 코드에서 나는 Rest의 두가지를 샘플로 코딩하였다. 바로 @GET 과 @POST이다. 이번에는 Rest 방식에 대하여 설명하도록 하겠다.
@GET
특정 구분자에 의한 값을 조회할때
@POST
새로운 데이터를 저장하거나 생성할 때
@PUT
저장되어 있는 데이터를 변경할 때
@DELETE
저장되어 있는 데이터를 삭제할 때
@HEAD
조회하고자 하는 데이터의 메타데이터를 확인 할 때
@OPTION
지원 메소드를 체크할 때
'Java' 카테고리의 다른 글
[Java] File을 String형으로 변환하여 다운로드 받을 때~!! (0) | 2013.09.25 |
---|---|
[Java] ServletFileUpload를 이용한 파일 업로드 & 다운로드 (0) | 2013.09.02 |
Windows7에서 Apache2 + Tomcat 연동 (2) | 2013.08.23 |
REST 란? (2) | 2013.07.30 |
OpenStack Swift Client Java Sample로 알아보는 HttpClient (0) | 2012.03.06 |
- Total
- Today
- Yesterday
- 오픈쉬프트
- 명령어
- Redhat
- 우분투
- Swift
- 네트워크
- 쿠버네티스
- Java
- 설치
- sdn
- 컨테이너
- 오픈스택
- OVN
- Python
- 클라우드
- 김미경
- 파이썬
- NOVA
- 후기
- install
- cpu
- 뉴트론
- Network
- 레드햇
- ubuntu
- 하둡
- neutron
- 세미나
- command
- openstack
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |