仓酷云

标题: JAVA网页编程之定制Jetty8体例启动web使用仓酷云 [打印本页]

作者: 第二个灵魂    时间: 2015-1-18 11:29
标题: JAVA网页编程之定制Jetty8体例启动web使用仓酷云
不得不提一下的是:.net网页编程是看到java红,而开发出来的工具。1:Jetty的4种web使用部署体例(不包含嵌进启动):

1:间接修正${JETTY_HOME}/etc/jetty.xml的设置来部署使用;
2:把war包扔到${JETTY_HOME}/webapps目次中,主动被WebAppDeployer发明往部署;
3:在${JETTY_HOME}/contents中增添一个设置文件(仿照test.xml的设置),由ContextDeployer主动发明往部署;
4:定制部署启动设置文件;
后面3中部署体例在Jetty7的部署体例中报告的较为分明。
2:定制化启动Jetty:

因为我们每一个使用必要分歧端口启动,如许在中断A使用的情形下,B使用不会遭到影响。同时,我们但愿在每台服务器上只要一份jetty,每一个使用的设置文件应当是自力的。
2.1:jetty容器设置文件
在start.ini中设置了etc/jetty.xml,etc/jetty-webapps.xml(WebAppDeployer),etc/jetty-contexts.xml(ContextDeployer)三个文件,代表在默许情形下启动jetty,web使用3种部署都是撑持的。WebAppDeployer则是会扫描${JETTY_HOME}/webapps目次,寻觅war包并部署;ContextDeployer会扫描${JETTY_HOME}/contents目次,找到能够部署的context设置文件并部署。
以是定制jetty之前,我们必要在start.ini中把这3行正文失落。
2.2:web使用设置
复制${JETTY_HOME}/etc/jetty.xml文件到bin目次上面,修正port和confidentialPort为本人使用的端标语。在<Arraytype="org.eclipse.jetty.server.Handler">中增加必要部署的war包得Item,以下注重(contextPath和war值):
<Item>
<Newclass="org.eclipse.jetty.webapp.WebAppContext">
<Setname="contextPath">/aaa</Set>
<Setname="war">/opt/longtask/aaa/webapps/aaa.war</Set>
<Setname="defaultsDescriptor"><SystemPropertyname="jetty.home"default="."/>/etc/webdefault.xml</Set>
<Setname="extractWAR">true</Set>
<Setname="copyWebDir">false</Set>
<Callname="addServlet">
<Arg>org.eclipse.jetty.servlet.DefaultServlet</Arg>
<Arg>/</Arg>
</Call>
</New>
</Item>
2.3:启动使用(省略相干sh剧本)
JETTY_CONFIG="${PWD}/jetty-${APP_NAME}.xml${PWD}/jetty-logging.xml"
JETTY_OPTS="-jar${JETTY_HOME}/start.jar&ndash;pre=${JETTY_CONFIG}"
java-server$JDK_OPTS$JETTY_OPTS>/dev/null2>&1&
2.4:OPTIONS的申明
在jetty8中经由过程java-jarstart.jar&ndash;version命令能够检察到默许启动的OPTIONS:
ActiveOptions:[Server,annotations,ext,jdbc,jmx,jsp,jta,plus,resources,websocket]
假如要启动其他OPTIONS,必要本人增加。

3:FAQ:

3.1:没法启动,报端口毛病:
Causedby:java.net.BindException:Addressalreadyinuse
atsun.nio.ch.Net.bind(NativeMethod)
atsun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:126)
atsun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
atorg.eclipse.jetty.server.nio.SelectChannelConnector.open(SelectChannelConnector.java:172)
atorg.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:300)
atorg.eclipse.jetty.server.nio.SelectChannelConnector.doStart(SelectChannelConnector.java:250)
atorg.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
atorg.eclipse.jetty.server.Server.doStart(Server.java:273)
atorg.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
atorg.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1203)
atjava.security.AccessController.doPrivileged(NativeMethod)
atorg.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1126)
经由过程lsof-i:port来检察端口是不是被占用,假如被占用,必要修正jetty设置文件中的port来启动
3.2:在往失落start.ini中正文失落jetty.xml后,制订本人的jetty.xml后报错。
成绩:
java.io.FileNotFoundException:UnabletofindXMLConfig:etc/jetty.xml
atorg.eclipse.jetty.start.Main.resolveXmlConfig(Main.java:671)
atorg.eclipse.jetty.start.Main.resolveXmlConfigs(Main.java:888)
atorg.eclipse.jetty.start.Main.start(Main.java:508)
atorg.eclipse.jetty.start.Main.parseCommandLine(Main.java:265)
atorg.eclipse.jetty.start.Main.main(Main.java:79)
必要在&ndash;pre中增加启动项,不是在-jarstart.jar前面增加
3.3:网上说war包必要解紧缩,是毛病的,jetty8不必要解压的。
4:参考文档:



唉!都是钱闹的1.Swing和.net网页编程开发比较------从市场份额看.net网页编程开发主要占据大部分的中小型和中型的的桌面开发,原因是它封装了很多工具
作者: 深爱那片海    时间: 2015-1-21 07:52
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
作者: 变相怪杰    时间: 2015-1-30 12:29
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
作者: 若相依    时间: 2015-2-2 13:00
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
作者: 小女巫    时间: 2015-2-7 20:02
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
作者: 蒙在股里    时间: 2015-2-20 18:38
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
作者: 精灵巫婆    时间: 2015-2-27 00:52
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
作者: 小妖女    时间: 2015-3-7 11:45
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
作者: 兰色精灵    时间: 2015-3-9 09:12
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
作者: 若天明    时间: 2015-3-11 13:10
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
作者: 第二个灵魂    时间: 2015-3-18 11:58
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
作者: 分手快乐    时间: 2015-3-20 21:18
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
作者: 因胸联盟    时间: 2015-3-24 16:44
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
作者: 仓酷云    时间: 2015-3-25 18:53
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
作者: 金色的骷髅    时间: 2015-3-27 06:08
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
作者: 简单生活    时间: 2015-3-28 09:08
Java是一种计算机编程语言,拥有跨平台、面向对java
作者: 海妖    时间: 2015-4-3 05:13
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
作者: 爱飞    时间: 2015-4-4 18:07
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
作者: 灵魂腐蚀    时间: 2015-4-8 15:41
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
作者: 乐观    时间: 2015-4-14 16:11
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
作者: 山那边是海    时间: 2015-4-27 10:58
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)




欢迎光临 仓酷云 (http://www.ckuyun.com/) Powered by Discuz! X3.2