专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅
va Web服务器选择简介在实际进行java Web项目实施的时候,我们可以采用的商业java Web服务器有Ibm WebSphere,Bea Web Logic。这两种服务器功能齐全而强大,支持所有的java 服务容器标准,适合成品商业java Web应用的发布。但是这两种服务器是商业服务器,价格昂贵,而且对系统资源要求极高。特别是Websphere 配置复杂,如果不配合采用ibm Websphere Studio Application非常不适合开发。而且他们不同的版本对servlet.jar等javax组件和jdk的要求不同。如Websphere ... [阅读全文] [PDF]
我们已经能够访问对话服务器,而且可以避免单一点故障,我们还必须为HttpSession建立一个封装对象,而SessionWrapper就是这样一个对象,而且,它还假定HttpSession的执行也是串行化的。如果它不是串行化的,可以很方便地修改封装对象将对话的信息转移到一个哈希表中并在其他成员变量中保留其他信息(ID、创作时间等信息。)。public interface SessionWrapper extends Memory { /** * 得到HttpSession的信息。 */ public HttpSession getSession(); } ... [阅读全文] [PDF]
标签:j2ee服务器
加或删除一个Memory对象时,经过同步的本地Mnemosyne对象需要对所有的Mnemosyne进行更新,可以通过notify()方法来完成这一任务。无论是发生write或take事件,Mnemosyne都会针对发生的事件调用适当的监听者的notify()方法。在synchronize()方法中,我们把本地Mnemosyne注册为所有远程Mnemosyne的take和write事件的监听者,一旦远程Mnemosyne上有take和write事件发生,就会调用本地 Mnemosyne的notify()方法。然后,本地Mnemosyne必须对事件作出反应。下... [阅读全文] [PDF]
标签:j2ee服务器
,对话服务器将获得Mnemosyne对象的一个实例,该实例被绑定到对话服务器的本地IP上。protected void bindMnemosyne() { file://得到Mnemosyne Mnemosyne Mnemosyne = null; try { Mnemosyne = MnemosyneFactory.getMnemosyne(); } catch(RemoteException remoteException) { System.out.println("Internal error:"); System.out.pr... [阅读全文] [PDF]
标签:j2ee服务器
访问Mnemosyne  下面我们来讨论在servlet服务器上访问远程Mnemosyne的方法。要在无需特定服务器在线的情况下加载一个包含对话信息的Mnemosyne,需要创建一个FailoverHandler的实例,FailoverHandler利用JDK 1.3中的Proxy API处理对话服务器当机的问题。FailoverHandler把一个代表访问远程对话服务器的RMI URL的字符串数组作为参数,然后,从Proxy类中获取Mnemosyne实例。下面的SessionManager类中的initializeMnemosyne()方法可以显示出这一... [阅读全文] [PDF]
标签:j2ee服务器
:  通过使用JDK 1.3中引入的RMI和Proxy API,本篇文章讨论了一种允许一台或多台servlet服务器在一台或多台对话服务器上维护对话信息的技术,采用这种技术后,单一点故障就不会再出现了。   如果系统中有一台或多台servlet服务器,对话信息只存在于运行着JVM的一台servlet服务器上,而不会被传输给其他servlet服务器。如果该servlet服务器当机或因为维护而被关机,任何保存在对话中的信息都会丢失。如果一个系统中有多台servlet服务器,一个带有对话的用户需要访问对话中的任何信息,都需要被重新定向到同一台servlet服务器... [阅读全文] [PDF]
标签:j2ee服务器
emosyne使用三种界面表达其状态。  1、CommonContext界面存贮Mnemosyne的全部信息。每个Mnemosyne都有一个CommonContext对象的实例,以便read、write、take Memory对象时在各个方法之间进行同步。在write或者take说Memory对象时,CommonContext对象既定义“silent”方法也定义“loud”方法,当在不进行事件通知的情况下添加对象时,就会用到“silent”方法。例如,当Mnemosyne对象接收到WriteRemoteEvent(向一个远程Mnemosyne对象写对象的告... [阅读全文] [PDF]
标签:j2ee服务器
Java Web服务器远程可执行命令漏洞 漏洞发布时间:2000-7-13 17:41:00漏 洞 描 述:在Solaris and Windows NT的Sun Java Web Server默认安装设置下。通过公告版的样板程序的漏洞,可以远程执行任意命令。漏洞测试方法如下:下面的例子将显示如何上载和执行该代码,而在服务器上显示"Hello World"。输入下面的JSP代码将打印出"Hello World":<% String s="Hello World"; %><%=s ... [阅读全文] [PDF]
r>Resin提供了最快的jsp/servlets运行平台。在java和javascript的支持下,Resin可以为任务灵活选用合适的开发语言。Resin的一种先进的语言XSL(XML stylesheet language)可以使得形式和内容相分离。 如果您选用jsp平台作为internet商业站点的支持,那么速度、价格和稳定性都是要考虑到的,resin十分出色,表现更成熟,很具备商业软件的要求。而且,它是全免费的。从站点下载的就是完整版本。所以值得向您推荐! 相对于tomcat3.1,后者更象是一个正在研究的项目。目前resin可以支持sun的j2e... [阅读全文] [PDF]
ejb-jar> The ejb-jar element is the root element of the EJB deployment descriptor. It contains an optional description of the ejb-jar file, optional display name, optional small icon file name, optional large icon file name, mandatory structural information about all included ... [阅读全文] [PDF]
ejb-jar> The ejb-jar element is the root element of the EJB deployment descriptor. It contains an optional description of the ejb-jar file, optional display name, optional small icon file name, optional large icon file name, mandatory structural information about all included ... [阅读全文] [PDF]
串解释执行   在有些编程语言中,输入字符串中可以插入特殊的函数,欺骗服务器使其执行额外的、多余的动作。下面的Perl代码就是一个例子:    = \"mail body\";  system(\"/usr/sbin/sendmail -t < \");  显然,这些代码可以作为CGI程序的一部分,或者也可以从命令行调用。通常,它可以按照如下方式调用:   perl script.pl [email protected]   它将把一个邮件(即“mail body”)发送给用户[email protected]。这个例子虽然简单,但我们却可以按照如下方式进行... [阅读全文] [PDF]
概述   编写安全的Internet应用并不是一件轻而易举的事情:只要看看各个专业公告板就可以找到连续不断的安全漏洞报告。你如何保证自己的Internet应用不象其他人的应用那样满是漏洞?你如何保证自己的名字不会出现在令人难堪的重大安全事故报道中?  如果你使用Java Servlet、JavaServer Pages(JSP)或者EJB,许多难以解决的问题都已经事先解决。当然,漏洞仍有可能出现。下面我们就来看看这些漏洞是什么,以及为什么Java程序员不必担心部分C和Perl程序员必须面对的问题。  C程序员对安全漏洞应该已经很熟悉,但象OpenBSD之类... [阅读全文] [PDF]
一、J2EE 服务器Weblogic简介 1. j2eeJ2EE 的体系结构 J2EE 的体系结构可以分为 4 层,如图 1 所示。 图1 J2ee的体系结构 (1)客户端层 这一层直接与用户交互,J2EE支持多种客户端,它既可以是通过Internet访问的Web浏览器客户端,也可以是通过企业Intranet运行的瘦客户端。 (2)Web层 这一层是为基于Web的应用程序服务的,J2EE中的JavaServer Page和Java Servlet技术可以访问封装有商务逻辑的组件,并负责响应Web客户端的请求。 (3)EJB层 Enterpr... [阅读全文] [PDF]
 例子:消息驱动Bank  为了阐述我们的观点,我们将开发和安装一个完整的样板应用程序:一个消息驱动的银行系统. 通过(幸亏有Spring)改进的基于POJOs的编程模型和保留相同的事务,我们可以不需要EJB或者一个应用服务器来实现这个系统。在下一个部分,我们将从消息驱动架构产生到另一个架构.就像基于WEB的架构一样.图1展示我们的样本应用程序的架构.   Figure 2. Classes for the message-driven bank  Bank是一个数据访问对象,这个对象封装数据库访问。MessageDrivenBank是一个消息驱动fa&c... [阅读全文] [PDF]
 第一步:编写Bank DAO   如下, Bank源代码是很直接和简单的JDBC操作. package jdbc;import javax.sql.*;import java.sql.*;public class Bank { private DataSource dataSource; public Bank() {} public void setDataSource ( DataSource dataSource ) { this.dataSource = dataSource; } private DataSource getDataSource(... [阅读全文] [PDF]
  第二步:配置BankDAO  我们会将便用Spring框架来配置我们的应用程序.Spring不是必需的,但是使用Spring的好处是我们将可以简单的添加服务,如:我们JAVA对象的事务和安全.这类似于应用服务器为EJB提供的东西,只是在我们的例子中Spring将变得更容易.Spring也允许我们把我们的类从目前的JDBC驱动实现中分离出来:Spring能够配置Driver(基于我们的XML配置数据)并把它提供给BankDAO对象(依赖注入原理).这样可以保持我们的JAVA代码的清淅和集中.这步的Spring配置文件如下:<?xml version=\"1.... [阅读全文] [PDF]
  第三步:测试BankDAO  让我们来测试我们的代码,(使用极限编程的程序员会首先写测试,但因开始不是很清淅,所以我们直到现在才开始写测试.)下面是一个简单的单元测试.这个测试可在你的的应用程序里运行:它通过Spring获得一个BANK对象来进行测试(这在setUp方法中实现).注意:这个测试使用清楚的事务划分:每一个测试开始之前开始一个事务,每个测试结束时强制进行事务回滚.这是通过手工的方式来减少测试对数据库数据的影响.package jdbc;import com.atomikos.icatch.jta.UserTransactionImp;import j... [阅读全文] [PDF]
  第四步:添加声明式事务管理  Spring允许添加声明式事务管理来管理java对象.假设我们想确认bank总是和一个有效的事务上下文一起被调用.我们通过在实际对象的上部配置一个proxy对象. Proxy和实际对象有相同接口,所以客户通过完全相同的方式使用它. 配置Proxy wrap每个BankDAO方法到事务中.结果配置文件如下. 不要被XML的庞大吓倒—大多数内容能通过复制和粘贴到你自己的工程中再使用.<?xml version=\"1.0\" encoding=\"UTF-8\"?><beans><!-- Use a JTA... [阅读全文] [PDF]
  第五步:编写PROPAGATION_REQUIRED  在这步,我们将添加JMS处理逻辑.为了做到这样,我们主要需要实现JMS MessageListener接口.我们也会添加公共的setBank方法使Spring的依赖注入起作用.源代码如下:package jms;import jdbc.Bank;import javax.jms.Message;import javax.jms.MapMessage;import javax.jms.MessageListener;public class MessageDrivenBankimplements Messag... [阅读全文] [PDF]
1 2 > 共23条 分2页