WebLogic的初步研究(2)--结构篇 - 我的技术文档 - szxyz

(这条文章已经被阅读了 136 次) 时间:2001-04-06 17:26:16 来源:szxyz (zjxyz) 原创-IT

要学习好一套系统首先要了解它的结构,本文详细的介绍 WebLogic 的一些结构和特点:

WebLogic的大部分配置是在 weblogic.properties 里完成的,只要仔细的研究这个文件就可以清楚得知关于 WebLogic 的一些结构和特点,下面就对 weblogic.properties 文件里的一些配置项作一些说明:

weblogic.httpd.documentRoot=public_html/
这就是WebLogic 的WEB 服务器的根目录,即是目录/weblogic/myserver/public_html/

weblogic.password.system=sdfjkdshfds
这个前文已经提到,是设置管理员密码。

weblogic.system.listenPort=7001
这是设置 WebLogic 的 WEB 服务器端口。

weblogic.httpd.servlet.classpath=/weblogic/myserver/servletclasses
设置Servlet存放的路径

关于Servlet

出于安全的目的,在 WebLogic 下运行的 WebLogic 最好在 weblogic.properties 里登记后才能运行,例如上文的提到Servlet http://localhost:7001/helloWorld,
它在weblogic.properties 里的登记项是
weblogic.httpd.register.helloWorld=examples.servlets.HelloWorldServlet
实际上,这个 Servlet 的实际路径是
/weblogic/myserver/servletclasses/examples/servlets/HelloWorldServlet.class
对照一下weblogic.properties里的登记项和HelloWorldServlet.class文件的路径,应该不难找出其登记Servlet的规律吧。

在weblogic.properties里有一下几个Servlet的登记项:

weblogic.httpd.register.AdminEvents=admin.AdminEvents
weblogic.httpd.register.AdminClients=admin.AdminClients weblogic.httpd.register.AdminConnections=admin.AdminConnections weblogic.httpd.register.AdminJDBC=admin.AdminJDBC
weblogic.httpd.register.AdminLicense=admin.AdminLicense
weblogic.httpd.register.AdminMain=admin.AdminMain
weblogic.httpd.register.AdminProps=admin.AdminProps
weblogic.httpd.register.AdminRealm=admin.AdminRealm
weblogic.httpd.register.AdminThreads=admin.AdminThreads weblogic.httpd.register.AdminVersion=admin.AdminVersion

这就是管理员管理 WebLogic 用的Servlet,通过URL访问http://localhost:7001/AdminMain,在弹出的身份验证对话框了输入 system 和在 weblogic.password.system= 设置的密码,就可以进入 WebLogic 的Web管理界面进行管理。

如果是为了方便一些,不经登记就使用Servlet,那么可以在 weblogic.properties 里把
weblogic.allow.execute.weblogic.servlet.classes=everyone
weblogic.httpd.register.servlets=weblogic.servlet.ServletServlet
的注释去掉,而对前面的提到的/weblogic/myserver/servletclasses/examples/servlets/HelloWorldServlet.class 的 Servlet 调用的URL是:
http://localhost:7001/servlets/examples/servlets/HelloWorldServlet
http://localhost:7001/servlets/examples.servlets.HelloWorldServlet

对于初学者来说也许不明白,为何目录可以加“.”来区分,我的理解是因为通过阅读源代码得知HelloWorldServlet.class 是属于examples.servlets这个包的,所以也可以以这个URL格式调用。

作者:XYZ※版权所有,
转载请注明来源
【CGI编程设计室】
http://zjxyz.yeah.net