Eclipse + WebLogic 추가 설정 사항들...

Posted at 2011. 8. 23. 11:40 | Posted in Server/WebLogic
반응형
이클립스 콘솔에서 한글이 깨짐

Eclipse + WebLogic 연동해서 쓰고.....



Workspace 기본 인코딩(encoding)을 UTF-8로 설정하게 되면



서버를 띄운 후 콘솔(Console) 내용 중에 한글이 깨져서 나오게 됩니다.

<2010. 8. 22 ���� 12�� 46�� 49�� KST> <Info> <WebLogicServer> <BEA-000377> <Starting WebLogic Server with Java HotSpot(TM) Client VM Version 17.0-b16 from Sun Microsystems Inc.>
<2010. 8. 22 ���� 12�� 46�� 54�� KST> <Notice> <Se................

웹로직 로그파일이 UTF-8이 아니라서 그런데 설정을 해줘야합니다.

"......\user_projects\domains\domain1(도메인명)\bin" 폴더에서 setDomainEnv.cmd 파일을 수정합니다.

227 라인 정도 부분에 JAVA_PROPERTIES 환경 변수에 추가해줍니다.

set JAVA_PROPERTIES=-Dplatform.home=%WL_HOME% -Dwls.home=%WLS_HOME% -Dweblogic.home=%WLS_HOME%
 -Dfile.encoding=UTF8 -Dfile.client.encoding=UTF8

다시 웹로직을 시작 시키면 한글이 제대로 나옵니다.

서버 시작시 윕에서 적용한 옵션이 나오는 것을 확인할 수 있습니다.

.
***************************************************
*  To start WebLogic Server, use a username and   *
*  password assigned to an admin-level user.  For *
*  server administration, use the WebLogic Server *
*  console at http:\\hostname:port\console        *
***************************************************
starting weblogic with Java version:
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b07)
Java HotSpot(TM) Client VM (build 17.0-b17, mixed mode, sharing)
Starting WLS with line:
C:\PROGRA~1\Java\JDK16~1.0_2\bin\java -client   -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=48m  -XX:MaxPermSize=128m -Dweblogic.Name=AdminServer -Djava.security.policy=C:\oracle\MIDDLE~1\11112~1.X\WLSERV~1.3\server\lib\weblogic.policy  -Xverify:none  -da -Dplatform.home=C:\oracle\MIDDLE~1\11112~1.X\WLSERV~1.3 -Dwls.home=C:\oracle\MIDDLE~1\11112~1.X\WLSERV~1.3\server -Dweblogic.home=C:\oracle\MIDDLE~1\11112~1.X\WLSERV~1.3\server -Dfile.encoding=UTF8 -Dfile.client.encoding=UTF8  -Dweblogic.management.discover=true  -Dwlw.iterativeDev= -Dwlw.testConsole= -Dwlw.logErrorsToConsole= -Dweblogic.ext.dirs=C:\oracle\MIDDLE~1\11112~1.X\patch_wls1032\profiles\default\sysext_manifest_classpath;C:\oracle\MIDDLE~1\11112~1.X\patch_jdev1111\profiles\default\sysext_manifest_classpath  weblogic.Server
<2010. 8. 19 오후 4시 19분 03초 KST> <Info> <WebLogicServer> <BEA-000377> <Starting WebLogic Server with Java HotSpot(TM) Client VM Version 17.0-b17 from Sun Microsystems Inc.>
<2010. 8. 19 오후 4시 19분 04초 KST> <Info> <Management> <BEA-141107> <Version: WebLogic Server 10.3.2.0  Tue Oct 20 12:16:15 PDT 2009 1267925 >
<2010. 8. 19 오후 4시 19분 06초 KST> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING>
<2010. 8. 19 오후 4시 19분 06초 KST> <Info> <WorkManager> <BEA-002900> <Initializing self-tuning thread pool>
<2010. 8. 19 오후 4시 19분 07초 KST> <Notice> <LoggingService> <BEA-320400> <The log file .....




PermGen space 에러.

잘 사용하다가 "java.lang.OutOfMemoryError" 에러가 나면서 서버가 뻣어 버리니는 경우가 많이 일어납니다...

이클립스가 뻣는게 아니라 웹로직 서버가 뻣는 것입니다.

이유는 여러가지가 있겠지만 어쨋든 메모리가 딸린겁니다... -_-;;

이때는  PerGen 사이즈를 늘려주면 좀 더 오래 버팁니다 ㅠㅠ

해결법 1)

웹로직을 직접 죽입니다. 작업관리자에서 웹로직을 띄우고 있는 java.exe 를 죽이면 됩니다.


해결법 2)

메모리 사이즈를 늘려서 좀 더 오래 버티게 하는 방법이 있습니다.

서버를 띄울때 로그를 잘 보면 처음에 아래와 같은 로그를 볼 수 있습니다.

Starting WLS with line:
C:\PROGRA~1\Java\JDK16~1.0_2\bin\java -client   -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=48m  -XX:MaxPermSize=128m ....

이 크기를 늘려주면 됩니다.

이클립스와 연결된 도메인 폴더로 이동합니다. (이하 %DOMAIN_HOME%)

%DOMAIN_HOME%\bin\setDomainEnv.cmd 파일을 수정합니다.

187 라인 쯤에 변경할 수 있는 부분이 있습니다.

아래의 값을 변경하면 됩니다. 자신의 OS 비트에 따라 변경하세요~

set MEM_MAX_PERM_SIZE_64BIT=-XX:MaxPermSize=256m

set MEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=128m

반응형
//

웹로직 ZIP 배포판 설치 (윈도우)

Posted at 2011. 7. 14. 09:33 | Posted in Server/WebLogic
반응형
단순히 이클립스 + OEPE + 웹로직을 돌리기 위해서 웹로직을 따로 설치하는게 그래서...

ZIP 버젼으로 간단하게 설치하는 방법을 알아 봅시다.

http://www.oracle.com -> Downloads -> Weblogic Server



다운로드 받은 "wls1035_dev.zip" 파일을 적당한 곳에 받아서 압축을 풉니다.

전 이제부터 "D:\server\wls1035_dev" 폴더에 풀겠습니다.

이제 모든 작업은 프롬프트 창에서 이루어 집니다.

 



일단 경로를 이동합니다.

어디인가> d:

d:\> cd server\wls1035_dev

d:\server\wls1035_dev> _ 


환경변수를 설정합니다.

> set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_26
> set MW_HOME=d:\server\wls1035_dev

> echo %JAVA_HOME%
C:\Program Files\Java\jdk1.6.0_26

>echo %MW_HOME%
d:\server\wls1035_dev


설정 프로그램을 실행합니다.

> configure.cmd

"Setting up proper ACLs for d:\server\wls1035_dev ... (operation takes awhile)"

CLASSPATH=C:\PROGRA~1\Java\JDK16~1.0_2\lib\tools.jar;d:\server\WLS103~1\wlserver\server\lib\weblogic_sp.jar;d:\server\WLS103~1\wlserver\server\lib\weblogic.jar;d:\server\WLS103~1\modules\features\weblogic.server.modules_10.3.5.0.jar;d:\server\WLS103~1\wlserver\server\lib\webservices.jar;d:\server\WLS103~1\modules\ORGAPA~1.1/lib/ant-all.jar;d:\server\WLS103~1\modules\NETSFA~1.0_1/lib/ant-contrib.jar;

PATH=;d:\server\WLS103~1\wlserver\server\native\win\32;d:\server\WLS103~1\wlserver\server\bin;d:\server\WLS103~1\modules\ORGAPA~1.1\bin;C:\PROGRA~1\Java\JDK16~1.0_2\jre\bin;C:\PROGRA~1\Java\JDK16~1.0_2\bin;C:\Program Files\Common Files\NetSarang;D:\oracle\11.2.0\client_1;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;d:\server\WLS103~1\wlserver\server\native\win\32\oci920_8

Your environment has been set.
Buildfile: d:\server\WLS103~1\configure.xml

registry:
     [copy] Copying 1 file to d:\server\WLS103~1

detect.os:

product.property:

product.property.unix:

product.property.windows:

all:

BUILD SUCCESSFUL
Total time: 3 seconds

현재 프롬프트(cmd) 창에 웹로직 환경을 적용합니다.

> %MW_HOME%\wlserver\server\bin\setWLSEnv.cmd

CLASSPATH=C:\PROGRA~1\Java\JDK16~1.0_2\lib\tools.jar;d:\server\WLS103~1\wlserver\server\lib\weblogic_sp.jar;d:\server\WLS103~1\wlserver\server\lib\weblogic.jar;d:\server\WLS103~1\modules\features\weblogic.server.modules_10.3.5.0.jar;d:\server\WLS103~1\wlserver\server\lib\webservices.jar;d:\server\WLS103~1\modules\ORGAPA~1.1/lib/ant-all.jar;d:\server\WLS103~1\modules\NETSFA~1.0_1/lib/ant-contrib.jar;C:\PROGRA~1\Java\JDK16~1.0_2\lib\tools.jar;d:\server\WLS103~1\wlserver\server\lib\weblogic_sp.jar;d:\server\WLS103~1\wlserver\server\lib\weblogic.jar;d:\server\WLS103~1\modules\features\weblogic.server.modules_10.3.5.0.jar;d:\server\WLS103~1\wlserver\server\lib\webservices.jar;d:\server\WLS103~1\modules\ORGAPA~1.1/lib/ant-all.jar;d:\server\WLS103~1\modules\NETSFA~1.0_1/lib/ant-contrib.jar;

PATH=;d:\server\WLS103~1\wlserver\server\native\win\32;d:\server\WLS103~1\wlserver\server\bin;d:\server\WLS103~1\modules\ORGAPA~1.1\bin;C:\PROGRA~1\Java\JDK16~1.0_2\jre\bin;C:\PROGRA~1\Java\JDK16~1.0_2\bin;;d:\server\WLS103~1\wlserver\server\native\win\32;d:\server\WLS103~1\wlserver\server\bin;d:\server\WLS103~1\modules\ORGAPA~1.1\bin;C:\PROGRA~1\Java\JDK16~1.0_2\jre\bin;C:\PROGRA~1\Java\JDK16~1.0_2\bin;C:\Program Files\Common Files\NetSarang;D:\oracle\11.2.0\client_1;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;d:\server\WLS103~1\wlserver\server\native\win\32\oci920_8;d:\server\WLS103~1\wlserver\server\native\win\32\oci9
20_8

Your environment has been set.


도메인을 생성합니다.

> %MW_HOME%/wlserver/common/bin/config.cmd


뭐... 거의 Next 연타 수준입니다...


















이클립스와 연동하는 부분은 여기에서 "플러그인 설치"와 "서버 등록" 부분만 보면 되겠습니다.

이 링크에 거의 대부분 들어가 있지만 ZIP 파일 설치 부분을 좀 더 자세히 다뤘습니다.
반응형
//
반응형
WebLogic EJBGen을 이용해 CMP를 만들 때 Oracle Sequence 를 사용하는 방법입니다.

Eclipse 3.4.2 + Oracle WebLogic Server Support 1.0.0.2 에서 테스트 했습니다.

스키마는 간단하게...

CREATE TABLE INFO (
   SEQ NUMBER PRIMARY KEY,
   DATA VARCHAR(200) NOT NULL
);

CREATE SEQUENCE INFO_SEQ INCREMENT BY 1;


WebLogic 프로젝트 만드는 법은 여기를 참조하시구요~ -_-+

시퀀스를 그려봤는데 당연히 틀렸겠죠? -_-



문제는 SessionBean에서 EntityBean한테 create() 할 때 시퀀스를 적용시켜야 한다는거죵~

InfoBean.java - Entity Bean

package ejb;

import javax.ejb.EntityBean;
import javax.ejb.CreateException;
import weblogic.ejb.GenericEntityBean;
import weblogic.ejbgen.AutomaticKeyGeneration;
import weblogic.ejbgen.Entity;
import weblogic.ejbgen.JndiName;
import weblogic.ejbgen.FileGeneration;
import weblogic.ejbgen.Constants;
import weblogic.ejbgen.CmpField;
import weblogic.ejbgen.LocalMethod;
import weblogic.ejbgen.AutomaticKeyGeneration.AutomaticKeyGenerationType;
import weblogic.ejbgen.CmpField.ColumnType;
import weblogic.ejbgen.Entity.DatabaseType;

@Entity (
  ejbName = "InfoBean",
  dataSourceName = "ejbTest",
  databaseType = DatabaseType.ORACLE,
  tableName = "info",
  primKeyClass = "java.lang.Integer"
)

@JndiName(local = "ejb.Info")

@FileGeneration(
  localClass = Constants.Bool.TRUE, localClassName = "Info",
  localHome = Constants.Bool.TRUE, localHomeName = "InfoHome",
  remoteClass = Constants.Bool.FALSE, remoteHome = Constants.Bool.FALSE,
  valueClass = Constants.Bool.FALSE
)

// Sequence 설정 부분
@AutomaticKeyGeneration(
  type = AutomaticKeyGenerationType.SEQUENCE,
  name = "info_seq",
  cacheSize = "1"
)

abstract public class InfoBean extends GenericEntityBean implements EntityBean
{
  private static final long serialVersionUID = 1L;

  public java.lang.Integer ejbCreate(java.lang.String data) throws CreateException
  {
    // setSeq(seq)
    setData(data);
    
    return null;
  }

  public void ejbPostCreate(java.lang.String data) { }

  @CmpField(column = "seq", primkeyField = Constants.Bool.TRUE, columnType = ColumnType.LONG_STRING)
  @LocalMethod
  public abstract java.lang.Integer getSeq();
  public abstract void setSeq(java.lang.Integer seq);

  @CmpField(column = "data", columnType = ColumnType.LONG_STRING)
  @LocalMethod
  public abstract java.lang.String getData();
  @LocalMethod
  public abstract void setData(java.lang.String data);
}


이렇게 Entity Bean 을 만들고, mysql 이나 mssql 에서 쓰듯이 시퀀스 부분 빼고 데이터를 넣어주면 자동으로 번호가 생성됩니다.

test.jsp - 클라이언트

<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>
<%@ page import="javax.naming.*, javax.rmi.*, ejb.*, java.util.Properties" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>

<%
Properties p = new Properties();
p.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
p.put(Context.PROVIDER_URL, "t3://localhost:7001");

Context ctx = new InitialContext(p);
Object h = ctx.lookup("ejb.InfoManage");
InfoManageHome home = (InfoManageHome)PortableRemoteObject.narrow(h, InfoManageHome.class);
InfoManage im = home.create();

// 테이터1 등록
InfoData info1 = im.insert("테이터1");
out.print(info1.getSeq() + " - " + info1.getData() + "<br>");

//테이터2 등록
InfoData info2 = im.insert("테이터2");
out.print(info2.getSeq() + " - " + info2.getData() + "<br>");
%>

</body>
</html>


InfoManageBean.java - 세션 빈

package ejb;

import javax.ejb.SessionBean;
import javax.naming.Context;
import javax.naming.InitialContext;

import weblogic.ejb.GenericSessionBean;
import weblogic.ejbgen.RemoteMethod;
import weblogic.ejbgen.Session;
import weblogic.ejbgen.JndiName;
import weblogic.ejbgen.FileGeneration;
import weblogic.ejbgen.Constants;

@Session(ejbName = "InfoMenageBean")
@JndiName(remote = "ejb.InfoManage")
@FileGeneration(
  remoteClass = Constants.Bool.TRUE, remoteClassName = "InfoManage",
  remoteHome = Constants.Bool.TRUE, remoteHomeName = "InfoManageHome",
  localClass = Constants.Bool.FALSE,
  localHome = Constants.Bool.FALSE
)

public class InfoManageBean extends GenericSessionBean implements SessionBean
{
  private static final long serialVersionUID = 1L;

  public void ejbCreate() { }

  @RemoteMethod
  public InfoData insert(String data) throws Exception
  {
    Context ctx = new InitialContext();
    InfoHome home = (InfoHome)ctx.lookup("ejb.Info");
    Info info = home.create(data);

    // DTO 클래스로 변환
    return convertData(info);
  }

  // Info -> InfoData
  private InfoData convertData(Info info)
  {
    return new InfoData(info.getSeq(), info.getData());
  }
}


InfoData.java - Data Transfer Object

package ejb;

public class InfoData implements java.io.Serializable

  private Integer seq;
  private String data;
 
  public InfoData(Integer seq, String data) {
    this.seq = seq;
    this.data = data;
  }
 
  public Integer getSeq() {
    return seq;
  }
  public String getData() {
    return data;
  }
  public void setData(String data) {
    this.data = data;
  }
 
  private static final long serialVersionUID = 1L;
}

반응형

'Server > WebLogic' 카테고리의 다른 글

Eclipse + WebLogic 추가 설정 사항들...  (6) 2011.08.23
웹로직 ZIP 배포판 설치 (윈도우)  (1) 2011.07.14
WebLogic 10.3 JDBC 설정(DataSource)  (13) 2009.04.18
Eclipse + WebLogic 10.3  (17) 2009.03.15
Domain 생성 및 테스트  (1) 2009.03.14
Oracle WebLogic Server 10.3 설치  (6) 2009.03.14
//

WebLogic 10.3 JDBC 설정(DataSource)

Posted at 2009. 4. 18. 05:48 | Posted in Server/WebLogic
반응형

- console 접속


- 왼쪽 트리메뉴에서 도메인이름 → Serviews → JDBC → Data Sources 선택





- 현재 등록되어있는 DataSource 목록이 나옵니다. New 클릭



- 기본 속성 입력
Name : 그냥 표시되는 이름
JDI Name : 중요!! DataSource 를 찾을 때 쓰는 이름입니다.
Database Type : 디비 종류
Database Driver : 드라이버





- 트랜잭션 설정 : 잘 모르겠습니다 -_- Next





- SID, 아이디, 비번, 주소 등등 입력합니다. Next





- 접속 테스트 합니다. Test Configuration 클릭





- Connection test succeeded. 가 나와야 성공. Next





- 타겟 서버를 선택합니다. Finish





- 추가된 것 확인




- 등록 완료



테스트

- 간단하게 테스트하기 위해 Server Runtime 을 Orcle WebLogic Server v10.3으로 선택





- 간단한 테스트 페이지 작성

<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>
<%@ page import="javax.naming.*, javax.sql.*, java.sql.*" %>
<%@ page import="java.util.Properties"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>WebLogic 10.3 JDBC 테스트</title>
</head>
<body>

<%
Context ctx = null;
DataSource ds = null;
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;

try
{
   ctx = new InitialContext();
   ds = (DataSource)ctx.lookup("AntopTest");

   conn = ds.getConnection();
   stmt = conn.createStatement();

   rs = stmt.executeQuery("select * from tab");

   while(rs.next()) {
      out.print(rs.getString(1) + " - " + rs.getString(2) + "<br>");
   }
}
catch(Exception e)
{
   out.print("error : " + e.getMessage());
}
finally
{
   try { if(rs != null) rs.close(); } catch (SQLException ignore) { }
   try { if(stmt != null) stmt.close(); } catch (SQLException ignore) { }
   try { if(conn != null) conn.close(); } catch (SQLException ignore) { }

   ds = null;
   try { if(ctx != null) ctx.close(); } catch (NamingException ignore) { }
}
%>

</body>
</html>



- 실행 결과





반응형
//

Eclipse + WebLogic 10.3

Posted at 2009. 3. 15. 07:51 | Posted in Server/WebLogic
반응형

시작전 설정


Eclipse 가 deploy 등등 조작(?)을 하려면 서버 설정을 하나 해줘야 합니다.


- 서버 시작
시작 → 프로그램 → Oracle WebLogic → User Projects → base_domain → Start Admin Server for Weblogic Server Domain


- Administration Console 실행 → 상단에 Preferences 클릭




- 마지막 Automatically Acquire Lock and Activate Changes를 체크해제하고 Save 클릭



- 왼쪽 상단의 Change Center가 수동으로 바뀌었습니다.



- Release Configuration을 클릭하여 Lock & Edit 버튼이 활성화되게 바꿉니다.
이 상태가 되어야 Eclipse가 자동 배포 등이 가능하게 됩니다..




Eclipse에 Runtime Server 추가하기


- Eclipse IDE for Java EE Developers로 시작합니다... File → New → Other... 선택


- Server → Server 선택. Next 클릭





- 처음에는 WebLogic이 없습니다. Download additional server adapters 클릭



- 기다리면 정보를 받아와 목록이 생깁니다. Oracle WebLogic Support 선택. Next 클릭




- 라이선스에 동의. Finish 클릭




- 프로그램을 다운로드 받아 설치한다고 합니다. OK 클릭



- 다운로드 및 설치 중... 설치가 완료되면 자동으로 Eclipse를 재시작합니다.



- JDK 버젼 어쩌고 나오는군요... Yes 클릭



- 다시 File → New → Other... 그리고 Server → Server
서버 목록에 Oracle WebLogic Server v10.3 이 생겼습니다. 선택 후 Next



- WebLogic Server 의 위치를 설정합니다.



- 도메인을 설정합니다.



- 적용시킬 프로젝트를 추가시킵니다. 현재는 프로젝트가 하나도 없군요...



- 아래 Servers 탭에 WebLogic Server 가 추가되었습니다.





간단한 세션 빈 테스트 - Server(WebLogic)
※ 컴퓨터 2대(Tomcat 6.0.18, WegLogic 10.3)로 분산환경에서 테스트 합니다.


File → New → Other... 그리고 General → Faceted Project 선택. Next 클릭




- 프로젝트 이름 설정. Next 클릭



- Facet 를 조합합니다. WebLogic에 맞는 EJB Porject를 생성하기 위해서는 아래와 같이 조합합니다.

오른쪽 Runtimes 탭에서 꼭 Oracle Weblogic Server v10.3을 체크해주세요.
체크하지 않으면 "Failed to retrieve WLS runtime for EJB processing" 에러가 납니다.



- Source Folder를 설정합니다.



- 잘 만들어 졌다네요..(아닌가?)



- Project Explorer를 보게되면 아래와같이 EJB Project가 만들어졌습니다.



- New → Package. 패키지를 하나 만듭니다.



- New → WebLogic Session Bean 선택. 여기서 만드는 파일이 빈(Bean) 클래스 파일이 됩니다.



- 소스 코드를 완성합니다.


기본적으로 세션빈에서 만들어져야 하는 명세는 GenericSessionBean 클래스에 작성되어있고 이걸 상속 받는군요...
public class HelloWorld extends GenericSessionBean implements SessionBean
{



중요한 부분은 @ 가 있는 부분입니다.

@JndiName은 클라이언트에서 lookup하는 JNDI 이름을 설정합니다.
@FileGenerration은 remoteClass, remoteHome, localClass, localHome 클래스 파일을 자동 생성할지 설정합니다.

@Session(ejbName = "HelloWorld")
@JndiName(remote = "ejb.HelloWorldRemoteHome")
@FileGeneration(remoteClass = Constants.Bool.TRUE, remoteHome = Constants.Bool.TRUE,
                          localClass = Constants.Bool.FALSE, localHome = Constants.Bool.FALSE)


remoteClass를 TRUE로 설정시, 사용자가 추가하는 메소드에는 꼭 @RemoteMethod를 적어줘야 원격(Remote) 클래스에 메소드가 추가됩니다.
@RemoteMethod
public String helloWorld() {
     return "Hello World!!";
}


빈(Bean) 클래스 파일만 작성하면 원격(Remote) 클래스, 홈(Home) 클래스, 기타파일(ejb-jar.xml, weblogic-ejb-jar.xml) 등을 알아서 만들어줍니다.

ex)
빈(Bean) 클래스 : HelloWorld.java
원격(Remote) 클래스 : HelloWorldRemote.java ← 자동생성
홈(Home) 클래스 : HelloWorldRemoteHome.java ← 자동생성
배치 디스크립터 파일 : ejb-jar.xml , weblogic-ejb-jar.xml ← 자동생성


- 아래 Servers 탭에서 WebLogic을 선택후 마우스 우클릭 → Add and Remove Projects...
현재 만든 프로젝트를 Configured projects 목록에 추가시킵니다.




- 서버 아래에 HelloWorld 프로젝트가 추가되었습니다.



- Run → Run 선택. Run on Server 선택 후 OK



- 서버 확인 후 Finish



- 서버가 실행되면서 자동으로 배치(재배치) 합니다.


※ 프로젝트의 State가 둘다 "Republish", "Synchronized"가 아니면 배치가 안된거니 확인하세요.(명세에 안맞거나 기탕 등등 에러)

※ 여기서 이런 오류가 나온다면, 위에 "시작전설정" 이 제대로 안되서 나오는 오류 입니다.



- Administration Console 실행 후 Deployments에서 배치가 되어있으면 성공!
※ 이클립스 프로젝트가 삭제되거나 서버의 프로젝트 목록에 없으면 배치가 안되니 다 완성후에는 수동으로 배치 시켜줘야겠죠?;;





클라이언트 설정하기


- 서버에서 작성된 EJB jar 파일이 클라이언트에서 필요합니다.
프로젝트 최상위 루트에서 마우스 우클릭 → Export → EJB JAR File 선택 후 적당한 위치에 저장합니다.
이 파일(HelloWorld.jar)은 클라이언트 프로젝트의 WebContent\WEB-INF\lib 에 저장합니다.




- 클라이언트가 서버와 다른 컴퓨터. 다른 JVM, 다른 컨테이너 등등 다를 경우 서버(WebLogic)의 라이브러리가 필요합니다

wlfullclient.jar 파일은 [톰켓설치폴더]\lib 에 저장합니다.

※ 링크가 바뀌는 바람이 링크 수정 하면서 여기에다 wlfullclient.jar 파일 생성법 올립니다. 이래서 링크는 싫어... ㅠ_ㅠ
Creating a wlfullclient.jar File for a Client Application
Use the following steps to create a wlfullclient.jar file for a client application:

1.Change directories to the server/lib directory.
cd WL_HOME/server/lib

2.Use the following command to create wlfullclient.jar in the server/lib directory:

java -jar ../../../modules/com.bea.core.jarbuilder_X.X.X.X.jar

where X.X.X.X is the version number of the jarbuilder module in the WL_HOME/server/lib directory. For example:

java -jar ../../../modules/com.bea.core.jarbuilder_1.0.1.0.jar

3.You can now copy and bundle the wlfullclient.jar with client applications.

4.Add the wlfullclient.jar to the client application’s classpath.




간단한 세션 빈 테스트 - Client(Tomcat)
※ 컴퓨터 2대(Tomcat 6.0.18, WegLogic 10.3)로 분산환경에서 테스트 합니다.


- File → New → Dynamic Web Project 선택. 프로젝트 이름, Target Runtime 설정





- 소스 코드를 완성합니다.


소스의 내용은 JNDI로 룩업해서 Hello World!!! 찍는거...

wlfullclient.jar과 HelloWorld.jar 파일이 아래와 같이 라이브러이에 등록되어있어야 합니다.
wlfullclient.jar : [톰켓설치폴더]\lib
HelloWorld.jar : [프로젝트]\WebContent\WEB-INF\lib



- Run → Run. Server 확인 후 Finish



- 잘 실행되었습니다!! ㅠ_ㅠv

반응형
//

Domain 생성 및 테스트

Posted at 2009. 3. 14. 21:04 | Posted in Server/WebLogic
반응형

도메인이란? 관리적인 개념으로서 단일 Administration Server로 관리하는 Server, Machine 및 Cluster의 그룹(인터넷 도메인 x)


- 시작 → 프로그램 → Oracle WebLogic → WebLogic Server 10gR3 → Tools → Configuration Wizard


- Create a new WebLogic domain 선택




- Generate a domain configured automatically to support to following products 선택



- User name과 User password 설정



- 서버 모드(개발, 운용) 및 JDK 설정



- 다른 옵션들 추가 설정



- 도메인 이름, 디렉토리 설정



- 도메인 생성 완료





※ html, jsp, Servlet 테스트



이 파일에는 간단한 index.html sum.jsp HelloServlet.java 파일이 들어있습니다.

Test.war 파일을 배치하여 테스트 해봅시다.


- Test.war 파일을 적당한 위치로 옮깁니다.



- 서버를 실행합니다.
시작 → 프로그램 → Oracle WebLogic → User Projects → base_domain → Start Admin Server for Weblogic Server Domain



Administration Console을 실행합니다.



- 왼쪽의 Domain Structure 트리에서 Deployments를 선택합니다.



- Install 클릭



- 배치할 파일이나 디렉토리를 설정합니다.
여기서 war, jar 파일이나 디렉토리가 선택이 되지 않으면 잘못 작성되었기 때문입니다.



- Next 클릭



- Finish 클릭.(더 자세한 설정을 하려면 Next로 더 설정할 수 있습니다)



- war 파일이 정상적으로 배치(deploy) 되었습니다.



- html 테스트



- jsp 테스트



- Servlet 테스트

반응형
//

Oracle WebLogic Server 10.3 설치

Posted at 2009. 3. 14. 16:05 | Posted in Server/WebLogic
반응형

영어 잘 하시는분은.. http://edocs.bea.com/wls/docs103/getstart/overview.html 보시길... ㅠ_ㅠ

- 설치 환경



java version "1.6.0_12"
Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
Java HotSpot(TM) Client VM (build 11.2-b01, mixed mode, sharing)



설치파일을 다운로드 받습니다.



- 다운로드 받은 설치파일을 실행합시다. (Net Installer - net_server103_win32.exe)



- Welcome~ Next...



- BEA Home Directory 설정후 Next



- Net Installer 에서만 나오는 설정입니다. 설치하면서 받을 파일 저장 위치를 지정합니다.



- 기본설치, 사용자설치 선택. 아무것도 모르겠다 하면 Complete 하시면 되겠죠... 저는 Custom로 합니다.



- 설치할 프로그램을 설정합니다.
Workshop은 Eclipse를 개량하여 최적화시킨 것입니다. 저는 Eclise를 따로 쓰기 때문에 패스.



- 사용할 JDK 를 선택합니다.
WebLogic 기본으로 1.6.0_05를 설치하는데 저는 1.6.0_12를 사용하기 위해서 따로 JDK를 추가 했습니다.



- JDK 1.6.0_12 쓸거냐고 물어보는군요... 가볍게 Yes



- 설치파일을 다운로드 받습니다. Net Installer 에서만 볼 수 있습니다.



- 다운로드 받은 설치파일을 검사합니다. Net Installer 에서만 볼 수 있습니다.



- WebLogic이 설치될 디렉토리를 설정합니다.



- Node Manager Service를 설치할지 설정.



- 시작메뉴를 전체 다 보여줄지 선택.. 윈도우 관련된 것이죠.. -_-/



- 설치될 파일들을 마지막으로 확인합니다.



- 설치 시작



- 설치가 완료되었습니다.



- 간단하게 설치가 잘 되었는지 확인하기 위해서....
시작 → 프로그램 → Oracle WebLogic → WebLogic Server 10gR3 → Examples → Start Examples Server 선택



http://localhost:7001/ 잘 되면 설치 완료!



- 서버 끄기 : 시작 → 프로그램 → Oracle WebLogic → WebLogic Server 10gR3 → Examples → Stop Examples Server 선택
※ 서버 끌때 그냥 cmd 창 닫아버리지 말고, 꼭 stop하는 명령(?)을 이용합니다.


- 설치하다가 이런거 나오면 윈도우 보안 관련된 것이니 '차단 해체' 선택해주세요.

반응형
//