- 浏览: 1162221 次
- 性别:
- 来自: nibiru
文章分类
- 全部博客 (407)
- lucene (1)
- java (147)
- j2se (1)
- javascript (2)
- spring (5)
- hibernate (1)
- mysql (1)
- oracle (10)
- 工作 (10)
- JPA (13)
- 网站 (5)
- xml (2)
- mina (3)
- 思想 (16)
- httpclient (10)
- JFreeChart (1)
- 多线程 (0)
- swing (2)
- socket (0)
- 网络 (3)
- protocol buffer (0)
- jmx (2)
- jboss/weblogic (1)
- flex3 (12)
- 设计模式 (1)
- apache (0)
- php (4)
- struts1&2 (2)
- oracle SOA (2)
- 微博短链接的生成算法(Java版本) (1)
- htmlparser (3)
- quartz (2)
- mail (1)
- 乱码 (2)
- txt (1)
- eclipse (7)
- 分类 (0)
- 数据库 (1)
- svn (1)
- 日志 (1)
- struts2 (4)
- jquery (2)
- 编码 (1)
- 路径,java (1)
- SOHO (1)
- 娱乐 (2)
- frameset (1)
- maven (1)
- 反射 (1)
- truts2 (1)
- 敏捷,scrum (1)
- OA (1)
- english (1)
- oralce (1)
- wampserver (1)
- 会计 (1)
- springmvc (1)
- js (1)
- CMA (1)
最新评论
-
ludabing:
[/color][color=yellow]
spring @component的作用 -
netwelfare:
EL表达式中null和empty的区别,可以看这篇文章:htt ...
EL表达式中empty的用法 -
wjs王结胜:
...
spring @component的作用 -
di1984HIT:
哈哈。真不错啊。~
微博短链接的生成算法(Java版本) -
di1984HIT:
不错,不错。。。
spring @component的作用
首先声明一下,这可能只是对于我这个项目中问题的解决,这里之所以写出来,一是觉得可能别人也会遇到我这个问题;二是强调一种解决问题的方法。
在struts2中用urlrewrite,结果一点作用都没起,web.xml中的配置和urlrewrite.xml的配置以及位置自认为都是正确的,而且启动的时候并没有报什么错误,先贴一下我的配置:
web.xml中的配置:
urlrewrite.xml
web.xml和urlrewrite.xml也都放在同一文件夹下了,接着我页面中有一个url:
<a href="login.html">登录</a>
按理说应该是可以了的,但是不起作用。
上网上去查,也有很多人在struts2中用urlrewrite不成功了,也有很多的解决方法。照着他们的解决方案试了很多,不成功,一点作用都没起。从404报错说找不到login.html文件,这时候就怀疑是否是没读到这个配置文件,但是自己又反驳了,启动项目的时候myeclipse的控制台中没有报错啊(控制台报错的错误是红色的,我这没红色,我就认为没有什么错误了,这是后话了)。接着去群里面问了,有一个哥们问了一下:”控制台报错了吗?“,我当然回答是没报错了。又弄了很久还是没找出原因,最后不知道是哪根痉对了跑去看了一下控制台输出,结果看到了这样的一句话:
当然了,这只是我项目中的一个问题,不过确教会了我一点:以前只有控制台<span style="color: #ff0000;">报红色</span>的错误我才去看到底是哪里错了,没报红色错误,启动的时候我就很少看控制台输出地是什么内容。这里我只想说的是,如果实在是找不错问题的时候,又确定自己没做错,这时候认真看看控制台,或许会找到问题的所在。
在struts2中用urlrewrite,结果一点作用都没起,web.xml中的配置和urlrewrite.xml的配置以及位置自认为都是正确的,而且启动的时候并没有报什么错误,先贴一下我的配置:
web.xml中的配置:
<?xml version="1.0" encoding="utf-8"?><web-app id="webapp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>struts blank</display-name> <filter> <filter-name>urlrewritefilter</filter-name> <filter-class> org.tuckey.web.filters.urlrewrite.urlrewritefilter </filter-class> <init-param> <param-name>loglevel</param-name> <param-value>warn</param-value> </init-param> </filter> <filter-mapping> <filter-name>urlrewritefilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.filterdispatcher </filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> <dispatcher>request</dispatcher> <dispatcher>forward</dispatcher> </filter-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list></web-app>这和网上介绍的方法一样,没什么特别的。
urlrewrite.xml
<?xml version="1.0" encoding="utf-8"?><!doctype urlrewrite public "-//tuckey.org//dtd urlrewrite 2.6//en" "http://tuckey.org/res/dtds/urlrewrite2.6.dtd"><!-- configuration file for urlrewritefilter http://tuckey.org/urlrewrite/ --><urlrewrite> <rule> <note> the rule means that requests to /test/status/ will be redirected to /rewrite-status the url will be rewritten. </note> <from>/test/status/</from> <to type="redirect">%{context-path}/rewrite-status</to> </rule> <rule> <from>/login.html</from> <to type="redirect">%{context-path}/login.action</to> </rule> <outbound-rule> <note> the outbound-rule specifies that when response.encodeurl is called (if you are using jstl c:url) the url /rewrite-status will be rewritten to /test/status/. the above rule and this outbound-rule means that end users should never see the url /rewrite-status only /test/status/ both in thier location bar and in hyperlinks in your pages. </note> </outbound-rule> <!-- installation in your web.xml add... <filter> <filter-name>urlrewritefilter</filter-name> <filter-class>org.tuckey.web.filters.urlrewrite.urlrewritefilter</filter-class> <init-param> <param-name>loglevel</param-name> <param-value>warn</param-value> </init-param> </filter> <filter-mapping> <filter-name>urlrewritefilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> examples redirect one url <rule> <from>/some/old/page.html</from> <to type="redirect">/very/new/page.html</to> </rule> redirect a directory <rule> <from>/some/olddir/(.*)</from> <to type="redirect">/very/newdir/$1</to> </rule> clean a url <rule> <from>/products/([0-9]+)</from> <to>/products/index.jsp?product_id=$1</to> </rule> eg, /products/1234 will be passed on to /products/index.jsp?product_id=1234 without the user noticing. browser detection <rule> <condition name="user-agent">mozilla/[1-4]</condition> <from>/some/page.html</from> <to>/some/page-for-old-browsers.html</to> </rule> eg, will pass the request for /some/page.html on to /some/page-for-old-browsers.html only for older browsers whose user agent srtings match mozilla/1, mozilla/2, mozilla/3 or mozilla/4. --></urlrewrite>这不知道是从哪摘取的,好像是一个文档中复制过来的。
web.xml和urlrewrite.xml也都放在同一文件夹下了,接着我页面中有一个url:
<a href="login.html">登录</a>
按理说应该是可以了的,但是不起作用。
上网上去查,也有很多人在struts2中用urlrewrite不成功了,也有很多的解决方法。照着他们的解决方案试了很多,不成功,一点作用都没起。从404报错说找不到login.html文件,这时候就怀疑是否是没读到这个配置文件,但是自己又反驳了,启动项目的时候myeclipse的控制台中没有报错啊(控制台报错的错误是红色的,我这没红色,我就认为没有什么错误了,这是后话了)。接着去群里面问了,有一个哥们问了一下:”控制台报错了吗?“,我当然回答是没报错了。又弄了很久还是没找出原因,最后不知道是哪根痉对了跑去看了一下控制台输出,结果看到了这样的一句话:
org.tuckey.web.filters.urlrewrite.urlrewritefilter error: unloading existing conf配置文件竟然没有载入,为什么呢?配置文件的位置是正确的啊,为什么会没被载入呢!于是把这句话弄到google中搜了一下,国外一论坛的哥们也有这样的错误,大致看了一下其中一句话惊醒了我”是不是配置文件中表达式之类的不对了呢?看看控制台上面这句话还报什么错了“。对啊,看看这上面报什么错误,去看发现:
org.tuckey.web.filters.urlrewrite.outboundrule error: outbound rule outbound rule 0 had error: to is not valid because it is blank于是乎,把上面urlrewrite.xml中的
<outbound-rule> <note> the outbound-rule specifies that when response.encodeurl is called (if you are using jstl c:url) the url /rewrite-status will be rewritten to /test/status/. the above rule and this outbound-rule means that end users should never see the url /rewrite-status only /test/status/ both in thier location bar and in hyperlinks in your pages. </note></outbound-rule>注释了,再运行竟然行了。
当然了,这只是我项目中的一个问题,不过确教会了我一点:以前只有控制台<span style="color: #ff0000;">报红色</span>的错误我才去看到底是哪里错了,没报红色错误,启动的时候我就很少看控制台输出地是什么内容。这里我只想说的是,如果实在是找不错问题的时候,又确定自己没做错,这时候认真看看控制台,或许会找到问题的所在。
发表评论
-
DISCUE盖楼器
2013-10-24 13:34 1232package com.soft.hr.per.service ... -
svn文件影响编译速度解决办法
2011-11-05 10:06 1689在eclipse开发环境中正常编译java文件时,eclip ... -
项目经理,产品经理,架构师
2011-08-29 12:54 2032理想:产品经理设计出简单好用的产品,并能理解技术约束和 ... -
题目
2011-08-28 13:01 17内容22222222222222222222222222222 ... -
如何用QTP录制鼠标右键点击事件
2011-08-25 17:09 1677qtp录制鼠标右键单击事件要通过模拟键盘操作来实现st ... -
Eclipse中要导出jar包中引用了第三方jar包怎么办【】
2011-08-25 15:17 3582单击菜单栏中 ... -
面试题整理2
2011-08-25 12:13 718现有n个人和m个桌子.当每桌做3个人时,多出来2个人. ... -
java把下载html批量换成chm电子书
2011-08-25 10:11 1375利用微软的hhc.exe来把需要转换成chm的htm ... -
java用链表解约瑟夫环问题
2011-08-25 09:36 10791到20的数围成一个圈,隔两个取出一个,直到所有的数都 ... -
CKEditor用法
2011-08-25 09:23 1504config.js ckeditor.editor ... -
工作难题
2011-08-24 15:00 1151function showitem(oid,order ... -
Rational.Rose7.0系统软件
2011-08-24 14:13 3056ibm.rational.rose7.0系统软件01. ... -
[] 探索建立私人的科技资料检索系统
2011-08-23 10:42 1344由于经济条 ... -
一、Java字节代码的操纵
2011-08-22 14:54 631<address style="tex ... -
线程状态的换
2011-08-22 13:09 1005<div><div>scjp5 ... -
线程的调度—优先级
2011-08-22 12:53 1149<div>与线程休眠类似,线程的优先级仍然 ... -
类 Hibernate Session DBUtil
2011-08-22 12:16 1246package com.core.util;impor ... -
利用Annotation构建针对POJO进行增删改操作
2011-08-22 12:12 1148package com.core.annotation ... -
360 Or QQ
2011-08-22 08:48 1178前几天,360忽然跳 ... -
XML JAVA解析 -- DOM
2011-08-19 14:27 1335dom : document object model ...
相关推荐
`urlRewrite`是Tuckey开源组织提供的一个URL重写过滤器,它能够帮助我们在Struts2应用中实现这个目标。 在这个最简实例中,我们将探讨如何在MyEclipse环境中集成Struts2和urlRewrite,创建一个基本的应用来演示URL...
### SSH2中的URLRewrite与Struts2生成静态页面 #### URLRewrite的理解与应用 在SSH2(Spring + Struts2 + Hibernate)框架中,URLRewrite是一种强大的工具,可以用于实现URL重写功能,使得网站的URL更加友好、易于...
`type="redirect"`表示客户端会接收到一个302重定向响应,`%{contextPath}`是当前应用的上下文路径,`${name}`则是从原始URL中提取的参数。 4. **启动应用**:现在,当你运行应用并访问原始URL时,`URL Rewrite ...
标题“urlrewrite2伪静态与使用文档(IIS)”涉及到的是在IIS(Internet Information Services)服务器环境中,使用urlrewrite2模块实现URL重写和伪静态功能的技术内容。URL重写是Web开发中的一项关键技术,它允许...
本框架为struts2+spring3+hibernate4+urlrewrite(伪静态地址) Struts采用通配,web-inf下的urlrewrite.xml为伪静态配置文件,跳转到struts.xml进行对应
1. **安装**:下载并安装IIS URL重写2的扩展,通常是`IIS Urlrewrite2.exe`文件,通过IIS Manager进行安装。 2. **添加规则**:在IIS Manager中选择目标站点,然后在“管理服务”下找到“URL重写”,点击“添加规则...
通过上述配置,我们可以有效地利用Java URL Rewrite解决默认页面问题,使得应用程序的URL更加友好且易于管理。这对于提升用户体验和系统的整体质量都有着重要的意义。同时,在实际应用中还需要关注配置细节以及可能...
UrlRewrite是一个强大的URL重写工具,常用于Java Web应用中,尤其是与Struts2框架结合使用时,能够帮助开发者优化URL结构,提高网站的SEO友好性和用户体验。在这个"UrlRewrite例子"中,我们将深入探讨UrlRewrite的...
2. 规则编写:UrlRewrite的规则通常写在web.config文件中,使用XML格式。一条规则由`<rule>`元素定义,包含`name`(规则名称)、`pattern`(匹配模式)、`action`(动作)等属性。例如,以下规则将所有请求的".aspx...
`URLrewrite`是一个基于Java的开源过滤器,它实现了Apache的mod_rewrite功能,广泛应用于Spring、Struts、JSF等Java Web框架中。它提供了强大的规则配置,使得开发者能够灵活地对URL进行重写和重定向。 在使用`URL...
URLRewrite是一款强大的URL管理工具,尤其在Java Web应用中广泛使用,它可以帮助开发者实现URL的重写和转换,以达到优化URL、隐藏真实路径、提高SEO效果等目的。在本篇文章中,我们将深入探讨URLRewrite的核心概念和...
标题中的“URL重写组件,URLRewrite”指的是在Web开发中用于管理应用程序URL的一种技术。URL重写是将用户请求的实际URL(可能是复杂的查询字符串)转换为更友好的、可读性更强的URL,这在提升用户体验和SEO(搜索...
3 最重要的 在象Google Yahoo 和 Live 这样的搜索引擎中提高你网站上网页的搜索相关性 具体来说 URL重写经常能使你在你网站上">什么是UrlRewrite UrlRewrite 是 将动态页面转换为静态页面的一种技术 例如 您网站...
2. 规则:URL Rewrite基于规则引擎,规则由条件和动作组成,条件用于判断何时应用规则,动作则定义如何转换URL。 二、安装与配置IIS URL Rewrite 1. 安装:可以从Microsoft Web Platform Installer或者微软官方网站...
2. **正则表达式**:UrlRewrite规则中经常用到正则表达式来匹配和提取URL中的特定部分。熟练掌握正则表达式对于编写复杂的URL重写规则至关重要。 3. **条件组合**:有时候,我们可能需要多个条件一起满足才执行重写...
2. **参数传递**:在URL中隐藏实际的请求参数,提高安全性。 3. **路径重定向**:根据预设规则进行URL重定向,如错误页处理、旧链接转向新链接等。 4. **动态路由**:通过正则表达式匹配URL,实现灵活的动态路由策略...
URLRewrite是一款广泛应用于ASP.NET应用程序中的URL重写工具,它允许开发者通过修改HTTP请求的URL来实现各种功能,如优化SEO(搜索引擎优化)、隐藏内部结构、提供友好的URL以及实现负载均衡等。该组件基于IIS的URL...
在Struts2中,URL通常以`.do`结尾,这是默认的Action映射后缀。然而,为了提供更加用户友好的URL和提高搜索引擎优化(SEO),开发者可能希望将这些后缀更改为更自然的扩展名,如`.html`。本教程将深入探讨如何在...
这通常涉及到在URL中添加或修改查询字符串,或者将路径信息改写为另一种形式。 在Struts2中,我们可以使用Tuckey的URLRewriteFilter来实现URL重写。这是一个开源的过滤器,它可以灵活地配置以满足不同的重写需求。...
在Java Web应用程序中,URLRewrite常用于隐藏实际的Servlet或JSP路径,提升用户体验,同时也有助于保护内部系统结构。 二、URLRewrite的工作原理 URLRewrite的核心是通过匹配规则来转换HTTP请求的URL。这些规则...