6.1.servlet的发布
在weblogic下的发布
首先编译servlet的源文件,生成serlver的class文件.假设servlet是com.sitechasia.refreshservlet
假设weblogic目录下的wlserver6.0目录为根目录,设定根目录名称为%wl_home%,并假设weblogic的配置文件没有被改动过.
步骤一,把refreshservlet文件复制到%wl_home%\ config\mydomain\applications\defaultwebapp_myserver\web-inf\classes\com\sitechasia
步骤二,修改%wl_home%\ config\mydomain\applications\defaultwebapp_myserver\web-inf目录下的web.xml文件,按照格式把refreshservlet添加进去,格式如下:
<servlet>
<servlet-name>
refreshservlet
</servlet-name>
<servlet-class>
com.sitechasia.refreshservlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>
refreshservlet
</servlet-name>
<url-pattern>
rs
</url-pattern>
</servlet-mapping>
在标签<servlet-name>中定义servlet的名称,<servlet-class>标签中指出该servlet所属的类,在标签<url-pattern>中定义在浏览器中输入的servlet的别名.
步骤三,启动weblogic,在浏览器中输入该servlet的别名,就完成对该servlet的调用.
在tomcat和类似应用服务器上,servlet的发布过程也是类似的,稍有不同的是servlet的class文件存放的目录有所不同,但都存在web.xml文件,文件结构是一样的.
6.2.sessionbean的发布
sessionbean的发布比servlet的发布复杂,而且不同的应用服务器需要配置的文件也不相同,这里对有状态的sessionbean在weblogic上的发布进行说明:
步骤一,在一个临时目录下,应该存在一个sessionbean的远程接口源文件,home接口源文件,bean源文件,ejb-jar.xml文件,weblogic-ejb-jar.xml文件.
在ejb-jar.xml中定义该sessionbean的远程接口类,home接口类,bean类的全名,定义有无状态,sessionbean的方法访问权限,定义sessionbean中需要的数据源的名称和类的全名及范围,在附录源码中有完整的ejb-jar.xml示例:
在weblogic-ejb-jar.xml中定义sessionbean的名称,和需要的数据源的名称和jndi的名称
步骤二,所有的文件都存在后,再构造一个批处理文件,用来发布该sessionbean,该批处理的处理的步骤是,
1. 在当前目录下创建目录,一个目录是build,在build目录下创建一个meta-inf目录.
2. 复制两个xml文件到build\meta-inf目录下,
3. 编译三个源文件,编译出来的包含类目录的class文件放置到build目录下,
4. 进入build目录,把meta-inf和类文件目录同时打包到一个jar文件
5. 调用命令,把这个jar文件发布到weblogic中.
批处理文件在附录源码中有完整示例.
到这一步基本实现了sessionbean的发布,但是就该ejb而言还是不能运行,因为还需要定义sessionbean中需要的数据源,需要在weblogic中配置相关的连接池,jndi名称和数据源名称.步骤如下:
启动weblogic,进入控制台,设weblogic服务器的连接是http://wl_server:7001,那输入http://wl_server:7001/console,管理者身份认证后,便可进入控制台.
展开节点mydomain ,services ,jdbc ,connection pools,创建一个新的连接池,这里依据该sessionbean需要的数据源举例,需要输入的有连接池name,url,driver classname,及properties
例, name : test
urldriver : jdbc:oracle:thin:@oracle_server:1521:testdata
driver classname : oracle.jdbc.driver.oracledriver
properties : user=guest
password=ps
dll=ocijdbc8
protocol=thin
定义完连接池,再创建数据源,数据源需要使用已经定义好的连接池,再命名数据源名称和jndi名称即可,这里命名的数据源名称和jndi名称应和sessionbean中需要调用的数据源名称,jndi名称保持一致.
