网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Groovy在WebWork2中的应用.
.Java知识:Web应用下实现定时任务.
.审查Java 代码的十一种常见错误.
.Java数据库编程中的几个常用技巧.
.Microsoft JScript 特性 - ECMA.
.您的 Java 代码安全吗.
.Oracle RAC on Sun Cluster 3.1(.
.带你揭开Java clone技术的神秘面.
.充分利用J2EE Enterprise BluePr.
.struts国际化轻松尝试.
.全面研读EJB 2.0(3).
.我的java学习经验谈1.
.Java语言出现的背景 影响及前景.
.Struts中logic:iterate标记的使用.
.介绍关于IBM MQSeries的使用指南.
.Java基础知识 Java中抽象类和接口.
.java学习——理解面向对象程序设.
.决定实施方案.
.界面代码重构有感.
.Java世界的Ruby.

Appfuse在jboss上的配置

发表日期:2008-1-5


主要是安全配置和日志问题,安全配置涉及到login-config.XML、web.xml、jboss-web.xml这几个文件,日志涉及到log4j.xml文件,配置方法如下:

1.         修改\server\default\cof\login-config.xml文件,为appfuse添加登录策略。

    <application-policy name = "appfuse">
       <authentication>
          <login-module code = "org.jboss.security.auth.spi.DatabaseServerLoginModule"
             flag = "required">
             <module-option name = "dsJndiName">jdbc/mysql</module-option><!—假如是jboss4.0,名字为Java:/ jdbc/mysql-->
             <module-option name = "principalsQuery">
              select passWord from app_user where username=?
              </module-option>
             <module-option name = "rolesQuery">
              select role_name, 'Roles' from user_role where username=?
              </module-option>
            </login-module>
       </authentication>
    </application-policy>

2.         创建数据源文件,比如文件名为mysql-ds.xml,将这个文件放入\server\default\ deploy目录中,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<datasources>
  <local-tx-datasource>
    <jndi-name>jdbc/mysql</jndi-name>
    <connection-url>jdbc:mysql://localhost:3306/mysql</connection-url>
    <driver-class>com.mysql.jdbc.Driver</driver-class>
    <user-name>root</user-name>
    <password></password>
  </local-tx-datasource>
</datasources>

3.         创建jboss-web.xml文件,定义jdbc资源和该app使用的是login-config.xml文件配置的哪一个安全策略。内容如下:

<?xml version="1.0" encoding="UTF-8" ?> 
 <jboss-web>
    <context-root>/appfuse</context-root> 
    <resource-ref>
       <res-ref-name>jdbc/mysql</res-ref-name> 
       <res-type>javax.sql.DataSource</res-type> 
       <jndi-name>java:jdbc/mysql</jndi-name> 
     </resource-ref>
   <security-domain>java:/jaas/appfuse</security-domain> 
 </jboss-web>

 

4.         修改web.xml文件:要害是资源的定义,如下:

     <resource-ref>

        <description>DB Connection</description>

        <res-ref-name> jdbc/mysql </res-ref-name>

        <res-type>javax.sql.DataSource</res-type>

        <res-auth>Container</res-auth>

    </resource-ref>

5.         web应用部署在jboss中时log4j的配置必须在\server\default\conf\log4j.xml中进行配置,内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

 

<!-- ===================================================================== -->

<!--                                                                       -->

<!--  Log4j Configuration                                                  -->

<!--                                                                       -->

<!-- ===================================================================== -->

 

<!-- $Id: log4j.xml,v 1.13.2.8 2003/09/23 14:16:27 slaboure EXP $ -->

 

<!--

   For more configuration infromation and examples see the Jakarta Log4j

   owebsite: http://jakarta.apache.org/log4j

 -->

 

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">

 

   <!-- ================================= -->

   <!-- Preserve messages in a local file -->

   <!-- ================================= -->

 

   <!-- A time/date based rolling appender -->

   <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">

      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>

      <param name="File" value="${jboss.server.home.dir}/log/server.log"/>

      <param name="Append" value="false"/>

 

      <!-- Rollover at midnight each day -->

      <param name="DatePattern" value="'.'yyyy-MM-dd"/>

 

      <!-- Rollover at the top of each hour

      <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>

      -->

 

      <layout class="org.apache.log4j.PatternLayout">

         <!-- The default pattern: Date Priority [Category] Message\n -->

         <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>

 

         <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message\n

         <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>

          -->

      </layout>

   </appender>

 

 

    <appender name="LOG" class="org.jboss.logging.appender.DailyRollingFileAppender">

      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>

      <param name="File" value="${jboss.server.home.dir}/log/app.log"/>

      <param name="Append" value="false"/>

 

      <!-- Rollover at midnight each day -->

      <param name="DatePattern" value="'.'yyyy-MM-dd"/>

 

      <!-- Rollover at the top of each hour

      <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>

      -->

 

      <layout class="org.apache.log4j.PatternLayout">

         <!-- The default pattern: Date Priority [Category] Message\n -->

         <param name="ConversionPattern" value="[%5p] %d{mm:ss} (%F:%M:%L)%n%m%n%n"/>

 

         <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message\n

         <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>

          -->

      </layout>

   </appender>

 

   <!-- ============================== -->

   <!-- Append messages to the console -->

   <!-- ============================== -->

 

   <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">

      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>

      <param name="Target" value="System.out"/>

      <param name="Threshold" value="ERROR"/>

 

      <layout class="org.apache.log4j.PatternLayout">

         <!-- The default pattern: Date Priority [Category] Message\n -->

         <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>

      </layout>

   </appender>

 

 

   <category name="org" >

      <priority value="WARN"/>

     

      <appender-ref ref="CONSOLE"/>

      <appender-ref ref="FILE"/>     

   </category>

  

   <category name="com" >

      <priority value="WARN"/>

     

      <appender-ref ref="CONSOLE"/>

      <appender-ref ref="FILE"/>     

   </category>

  

  

   <category name="net.sf.hibernate" >

      <priority value="WARN"/>

     

      <appender-ref ref="CONSOLE"/>

      <appender-ref ref="FILE"/>     

   </category>

 

   <category name="net.sf" >

      <priority value="WARN"/>

     

      <appender-ref ref="CONSOLE"/>

      <appender-ref ref="FILE"/>     

   </category>

 

   <!-- Limit the org.apache.commons category to INFO as its DEBUG is verbose -->

   <category name="org.apache" >

      <priority value="WARN"/>

     

      <appender-ref ref="CONSOLE"/>

      <appender-ref ref="FILE"/>     

   </category>

  

 

   <!-- Limit JBoss categories to INFO -->

   <category name="org.jboss">

     <priority value="WARN"/>

     <appender-ref ref="CONSOLE"/>

     <appender-ref ref="FILE"/>      

   </category>

 

   <category name="org.apache.struts.action">

      <priority value="WARN"/>

      <appender-ref ref="CONSOLE"/>

      <appender-ref ref="FILE"/>     

   </category>

 

  

  

   <category name="org.appfuse">

      <priority value="INFO"/>

      <appender-ref ref="CONSOLE"/>  

      <appender-ref ref="FILE"/>     

   </category>

 

   <category name="org.appfuse.struts">

      <priority value="INFO"/>

      <appender-ref ref="LOG"/>        

   </category>

  

   <category name="org.appfuse.webapp.listener">

      <priority value="INFO"/>

      <appender-ref ref="LOG"/>        

   </category>

 

   <category name="org.appfuse.mdb">

      <priority value="INFO"/>

      <appender-ref ref="LOG"/>        

   </category>

 

  

   <category name="org.appfuse.common.jms">

      <priority value="WARN"/>

      <appender-ref ref="LOG"/>        

   </category>

  

  

 

   <category name="org.appfuse">

      <priority value="WARN"/>

      <appender-ref ref="CONSOLE"/>  

      <appender-ref ref="FILE"/>     

   </category>

 

  

   <root>

      <appender-ref ref="CONSOLE"/>

      <appender-ref ref="FILE"/>

   </root>

 

 

</log4j:configuration>


上一篇:Second-generation aspect-oriented programming By Dave Schweisguth 人气:453
下一篇:编写Java GUI的好工具WindowBuilder Pro[包含Swt-Designer和Swing-Designer] 人气:1464
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐