'IT 이야기/JBoss EAP' 카테고리의 글 목록 (3 Page)
본문 바로가기

IT 이야기/JBoss EAP93

JBoss EAP 6과 친해지기 16탄 - 웹 서비스 서브시스템 1. 웹 서비스 개요 (1) 웹 서비스의 핵심 기술들 웹 서비스를 구성하는 여러 가지 많은 기술이 있지만, 그중에서도 핵심이 되는 것이 SOAP와 WSDL입니다. (2) SOAP SOAP(Simple Object Access Protocol)는 웹 서비스에 사용되는 메시지 형식 및 규칙 등을 정의한 규약입니다. HTTP, HTTPS, SMTP 등을 사용하여 XML 기반의 메시지를 서버들 간에 교환하는 형태의 프로토콜입니다. SOAP 메시지는 다음 그림과 같이 Envelope, Header, Body로 구성됩니다. (3) WSDL SOAP 인터페이스는 XML 기반의 WSDL(Web Services Description Language)로 정의됩니다. WSDL은 웹 서비스가 '어디에 있는지', '어떤 메시지.. 2020. 12. 21.
JBoss EAP 6과 친해지기 15탄 - 메시징 서브시스템 1. 메시징 개념 대부분 요청을 보내면 응답이 오기까지 기다리는 동기 처리에 익숙하여 요청을 보낸 후 응답을 기다리지 않고 곧바로 다른 일을 처리하는 비동기 처리에 대해 막연히 불안하게 생각할 수 있습니다. 비동기 처리에 대해 자주 예로 드는 것이 메일입니다. 일상 생활에서 종이로 보내는 메일이나 전자메일 모두 보내는 즉시 답변 메일이 오는 것이 아니라서 기다리지 않습니다. 반면 전화는 실생활에서 경험할 수 있는 대표적인 동기 처리의 예입니다. 통화 상대가 다른 일을 하고 있었더라도 연결되면 전화 통화를 시작하게 됩니다. 엔터프라이즈 시스템에서는 일반적으로 MQ(Message Queue) 또는 MOM(Message Oriented Middleware)이라고 부르는 비동기 메시징 시스템을 사용하여 여러 시.. 2020. 12. 18.
JBoss EAP 6과 친해지기 14탄 - JPA 서브시스템 1. JPS란? JPA는 객체와 RDBMS의 Entity를 변환하기 위한 API입니다. 이미 Hibernate나 iBatis 등의 OR 맵핑이나 SQL 프레임워크를 사용하고 있다면 필요 없을 수도 있습니다. 하지만 JPA 표준을 주도한 인물이 JBoss Hibernate 프로젝트 창시자인 Gavin King이며, JPA가 Hibernate를 계승하고 있다는 점에서 주의 깊게 살펴보는 것이 좋습니다. JBoss EAP 6에는 jboss.org에서 개발된 Hibernate 4.1이 포함되어 있습니다. Hibernate는 Java 애플리케이션 개발자가 Java 도메인 모델을 사용하여 RDBMS를 관리하기 위한 OR 맵핑 라이브러리와 툴을 제공합니다. Hibernate 4.1의 EntityManager는 JPA.. 2020. 12. 17.
JBoss EAP 6과 친해지기 13탄 - EJB3 서브시스템 1. EJB 3 서브시스템 EJB(Enterprise JavaBeans) 3.1은 Enterprise Bean이라는 서버 측 컴포넌트를 사용하여 분산 Java EE 애플리케이션을 개발하기 위한 표준 API입니다. Enterprise Bean은 컴포넌트화하여 재사용하기 쉽도록 애플리케이션의 비즈니스 로직을 구현합니다. EJB 3.1은 Java EE 표준 JSR-318에서 정의되어 있습니다. JBoss EAP 6는 EJB 3.1 표준을 사용하여 개발한 애플리케이션을 완벽히 지원합니다. EJB 컨테이너는 JBoss EJB 3 커뮤니티 프로젝트(http://www.jboss.org/EJB 3)를 사용하여 구현하였습니다. 이전 버전인 Java EE 5에서 가장 큰 변화는 DI(Dependency Injection.. 2020. 12. 17.
JBoss EAP 6과 친해지기 12탄 - 데이터소스 서브시스템 1. 데이터소스 서브시스템에 대해 데이터베이스에 연결하는 방법을 캡슐화한 것으로 RDBMS와 상관없이 공통의 인터페이스를 사용해 연결할 수 있도록 하는 방식입니다. 데이터베이스 드라이버나 URL에 대한 정보를 애플리케이션에서 분리하여 서버 측에서 별도로 관리하기 때문에 애플리케이션은 데이터소스를 네이밍 서비스에서 룩업하여 가져다가 데이터베이스 연결을 사용할 수 있습니다. 이 네이밍 서비스는 Java Naming and Directory Interface (이하, JNDI)를 사용하고 있기 때문에 애플리케이션에서 룩업할 때 데이터소스의 JNDI 이름만 있으면 됩니다. 데이터베이스와의 연결 관리는 클라이언트 애플리케이션이 아닌 JBoss EAP 6에서 하게 됩니다. 비교적 비용이 많이 소요되는 데이터베이스와.. 2020. 12. 16.
[Error_Log] Unexpected character (<) at position 0 관련 에러 발생 JBoss EAP 에러 로그에서 아래와 같이 Unexpected character ( 2020. 10. 23.
[Error_Log] java.text.ParseException: Unparseable date 관련 에러 발생 JBoss EAP 에러 로그에서 아래와 같이 java.text.ParseException: Unparseable date 에러가 발생하였습니다. 12:34:56.789ERROR[stderr] (ajp-thread-pool-threads - 20) java.text.ParseException: Unparseable date: "20201004" 12:34:56.789ERROR[stderr] (ajp-thread-pool-threads - 20) at java.text.DateFormat.parse(DataFormat.java:366) 12:34:56.789ERROR[stderr] (ajp-thread-pool-threads - 20) at nibp.ip.support.util.DateUtil.getConv.. 2020. 10. 23.
[Error_Log] URLDecoder: Illegal hex characters in escape (%) pattern 관련 에러 발생 JBoss EAP 에러 로그에서 아래와 같이 URLDecoder: Illegal hex characters in escape (%) pattern 에러가 발생하였습니다. 12:34:56.78ERROR[org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/].[action]] (ajp-/10.xxx.xxx.xxx:8309-7) JBWEB000236: Servlet.service() for servlet action threw exception: java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - For input strin.. 2020. 10. 23.
[Error_Log] getOutputStream() has already been called for this respons 에러 발생 JBoss EAP 에러 로그에 아래와 같이 getOutputStream() has already been called for this response 에러가 발생하였습니다. 12:34:56.789ERROR[org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/abc].[jsp]] (ajp-/10.xxx.xxx.xxx:9009-23) JBWEB000236: Servlet.service() for servlet jsp threw exception: java.lang.IllegalStateException: JBWEB000028: getOutputStream() has already been called for this response at .. 2020. 10. 23.
[Error_Log] Cannot convert noValue of type class java.lang.String to class java.lang.Long 에러 발생 JBoss EAP 에러 로그에 아래와 같이 Cannot convert noValue of type class java.lang.String to class java.lang.Long 에러가 발생하였습니다. 12:34:56,789ERROR[org.apache.catalina.core.ContainerBase.[jboss.web].[abc].[action]] (ajp-10.xxx.xxx.xxx:8409-6) JBWEB000236: Servlet.service() for servlet action threw exception: javax.el.ELException: JBWEB006003: Cannot convert noValue of type class java.lang.String to class java... 2020. 10. 23.