Where The Streets Have No Name

WTP에서 oc4j 9.0.4 server definition 본문

Developement/Java

WTP에서 oc4j 9.0.4 server definition

highheat 2007. 3. 29. 15:02
wtp상에서 oc4j plug-in이 설치된 위치 :
c:\eclipse3x\plugins\org.eclipse.jst.server.generic.oc4j_1.5.0.v200606130315

oc4j가 설치된 위치 : c:\oc4j
이문서에서는 oc4j_home은 c:\oc4j  로 설정한다.

1. plugin.properties (수정)
# ============ oc4j904 ====================
oracle.9_0_4.runtime.name=Oracle OC4J Standalone 9.0.4
oracle.9_0_4.runtime.description=Oracle OC4J 9.0.4 runtime
oracle.9_0_4.server.name=Oracle OC4J Standalone Server 9.0.4
oracle.9_0_4.server.description=Oracle OC4J Standalone Server for v9.0.4

2. plugin.xml (수정)
    <runtimeType
        id="org.eclipse.jst.server.generic.runtime.oc4j10g904"
        name="%oracle.9_0_4.runtime.name"
        description="%oracle.9_0_4.runtime.description"
        vendor="%oracleCategory"
        version="9.0.4"
        class="org.eclipse.jst.server.generic.core.internal.GenericServerRuntime">
        <moduleType
            types="jst.web"
            versions="1.2, 1.3"/>
        <moduleType
            types="jst.ejb"
            versions="1.2, 1.3"/>
        <moduleType
            types="jst.ear"
            versions="1.2, 1.3"/>
     </runtimeType>

    <serverType
        runtime="true"
        class="org.eclipse.jst.server.generic.core.internal.GenericServer"
        id="org.eclipse.jst.server.generic.oc4j10g904"
        initialState="stopped"
        supportsRemoteHosts="false"
        runtimeTypeId="org.eclipse.jst.server.generic.runtime.oc4j10g904"
        description="%oracle.9_0_4.server.description"
        launchConfigId="org.eclipse.jst.server.generic.core.launchConfigurationType"
        behaviourClass="org.eclipse.jst.server.generic.core.internal.GenericServerBehaviour"
        name="%oracle.9_0_4.server.name"
        startTimeout="50000"
        stopTimeout="15000"
        hasConfiguration="false"
        launchModes="run,debug">
      </serverType> 

   <fragment
        id="org.eclipse.jst.server.generic.runtime"
        typeIds="org.eclipse.jst.server.generic.runtime.oc4j10g904"
        class="org.eclipse.jst.server.generic.ui.internal.GenericServerRuntimeWizardFragment"/>
    <fragment
        id="org.eclipse.jst.server.generic.server"
        typeIds="org.eclipse.jst.server.generic.oc4j10g904"
        class="org.eclipse.jst.server.generic.ui.internal.GenericServerWizardFragment"/>
 
     <image
        id="org.eclipse.jst.server.generic.image"
        icon="icons/obj16/oracle.gif"
        typeIds="org.eclipse.jst.server.generic.runtime.oc4j10g904"/>
     <image
        id="org.eclipse.jst.server.generic.image"
        icon="icons/obj16/oracle.gif"
        typeIds="org.eclipse.jst.server.generic.oc4j10g904"/>    

     <serverdefinition id="org.eclipse.jst.server.generic.runtime.oc4j10g904"   definitionfile="/servers/oracle.9.0.4.serverdef">
     </serverdefinition>

3. oracle.9.0.4.serverdef (신규)

<?xml version="1.0" encoding="UTF-8"?>
<tns:ServerRuntime
    xmlns:tns="http://eclipse.org/jst/server/generic/ServerTypeDefinition"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://eclipse.org/jst/server/generic/ServerTypeDefinition ServerTypeDefinitionSchema.xsd "
    name="Oracle OC4J Standalone Server v9.0.4" version="v9.0.4">
   
    <property id="OC4J_HOME"
        label = "%label.j2ee.home"
        type="directory"
        context="runtime"
        default="C:/oc4j"/>
       
    <property id="oc4j.admin.user"
        label="%label.admin.user"
        type="string"
        context="server"
        default="admin" />
       
    <property id="oc4j.admin.password"
        label="%label.admin.pw"
        type="string"
        context="server"
        default="welcome" />
       
    <property id="oc4j.admin.port"
        label="%label.host.port"
        type="string"
        context="server"
        default="23791" />
       
    <property id="oc4j.http.port"
        label="%label.http.port"
        type="string"
        context="server"
        default="8888" />   
           
    <property id="oc4j.bind.website"
        label="%label.web.site"
        type="string"
        context="server"
        default="" />
       
    <property id="oc4j.vm.arguments"
        label="%label.vm.arguments"
        type="string"
        context="server"
        default="" />       
       
    <property id="oc4j.program.arguments"
        label="%label.program.arguments"
        type="string"
        context="server"
        default="" />               
       
    <port>
        <no>${oc4j.http.port}</no>
        <name>Http</name>
        <protocol>http</protocol>
    </port>
   
    <module>
        <type>jst.web</type>
        <publishDir>${OC4J_HOME}/j2ee/home/applications</publishDir>
        <publisherReference>org.eclipse.jst.server.generic.antpublisher</publisherReference>
    </module>

    <module>
        <type>jst.ejb</type>
        <publishDir>${OC4J_HOME}/j2ee/home/applications</publishDir>
        <publisherReference>org.eclipse.jst.server.generic.antpublisher</publisherReference>
    </module>

    <module>
        <type>jst.ear</type>
        <publishDir>${OC4J_HOME}/j2ee/home/applications</publishDir>
        <publisherReference>org.eclipse.jst.server.generic.antpublisher</publisherReference>
    </module>   
   
    <project>
        <classpathReference>oracle_oc4j</classpathReference>
    </project>
   
    <start >
        <mainClass>com.evermind.server.OC4JServer</mainClass>
        <workingDirectory>${OC4J_HOME}/j2ee/home</workingDirectory>
        <programArguments>${oc4j.program.arguments}</programArguments>
        <vmParameters>${oc4j.vm.arguments}</vmParameters>
        <classpathReference>oracle_boot</classpathReference>
    </start>

    <stop>
        <mainClass>com.evermind.client.orion.Oc4jAdminConsole</mainClass>
        <workingDirectory>${OC4J_HOME}/j2ee/home</workingDirectory> 
        <programArguments>ormi://localhost:${oc4j.admin.port} ${oc4j.admin.user} ${oc4j.admin.password} -shutdown </programArguments>
        <vmParameters></vmParameters>
        <classpathReference>oracle_admin</classpathReference>
    </stop>
   
    <publisher id="org.eclipse.jst.server.generic.antpublisher">
        <publisherdata>
            <dataname>build.file</dataname>
            <datavalue>/buildfiles/oracle.10.1.3.xml</datavalue>
        </publisherdata>
        <publisherdata>
            <dataname>target.publish.jst.web</dataname>
            <datavalue>deploy.j2ee.web</datavalue>
        </publisherdata>
        <publisherdata>
            <dataname>target.publish.jst.ejb</dataname>
            <datavalue>deploy.j2ee.ejb</datavalue>
        </publisherdata>
        <publisherdata>
            <dataname>target.publish.jst.ear</dataname>
            <datavalue>deploy.j2ee.ear</datavalue>
        </publisherdata>
        <publisherdata>
            <dataname>target.unpublish.jst.web</dataname>
            <datavalue>undeploy.j2ee.module</datavalue>
        </publisherdata>
        <publisherdata>
            <dataname>target.unpublish.jst.ejb</dataname>
            <datavalue>undeploy.j2ee.module</datavalue>
        </publisherdata>   
        <publisherdata>
            <dataname>target.unpublish.jst.ear</dataname>
            <datavalue>undeploy.j2ee.module</datavalue>
        </publisherdata>       
    </publisher>

    <classpath id="oracle_admin">
        <archive path="${OC4J_HOME}/j2ee/home/admin.jar"/>
    </classpath>
   
    <classpath id="oracle_boot">
        <archive path="${OC4J_HOME}/j2ee/home/oc4j.jar"/>
    </classpath>
   
    <classpath id="oracle_oc4j">
        <archive path="${OC4J_HOME}/j2ee/home/admin.jar"/>
        <archive path="${OC4J_HOME}/j2ee/home/oc4j.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/ejb.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/jdbc.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/connector.jar" />
        <archive path="${OC4J_HOME}/lib/dms.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/jsse.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/activation.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/jcert.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/jndi.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/jnet.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/jta.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/mail.jar" />
        <archive path="${OC4J_HOME}/lib/xmlparserv2.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/jaxp.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/jaas.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/jazn.jar" />
        <archive path="${OC4J_HOME}/jdbc/lib/classes12dms.jar" />
        <archive path="${OC4J_HOME}/jdbc/lib/nls_charset12.jar" />
        <archive path="${OC4J_HOME}/soap/lib/soap.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/jem.jar" />
        <archive path="${OC4J_HOME}/javacache/lib/cache.jar" />
        <archive path="${OC4J_HOME}/j2ee/home/lib/http_client.jar" />
        <archive path="${OC4J_HOME}/jlib/jssl-1_1.jar" />
        <archive path="${OC4J_HOME}/jlib/javax-ssl-1_1.jar" />
        <archive path="${OC4J_HOME}/sqlj/lib/runtime12ee.jar" />
        <archive path="${OC4J_HOME}/sqlj/lib/translator.jar" />       
    </classpath>
   
    <jndiConnection>
        <providerUrl>ormi://localhost:${oc4j.admin.port}</providerUrl>
        <initialContextFactory>com.evermind.server.rmi.RMIInitialContextFactory</initialContextFactory>
        <jndiProperty>
            <name></name>
            <value></value>
        </jndiProperty>
    </jndiConnection>

</tns:ServerRuntime>

위내용이 적용되기 위해서는 command창에서 eclipse -clean 을 입력해서 실행시킨다.

참조 :
http://forge.objectweb.org/forum/forum.php?thread_id=2046&forum_id=360
http://blog.exadel.com/?p=17
http://en.opensuse.org/Java/jboss 
http://www.eclipse.org/webtools/community/tutorials/ServerDefinitionExplained/ServerDefinitionExplained.html