问题三:用Struts开发JSP时,不太想用Struts自带的标签库,因为感觉它的功能没有JSTL强大,我用JSTL可不可以啊,这样会不会不像Strtus的开发模式?

解决方案 »

  1.   

    1.可以设成gb2312,如果对存取数据,需要转码2.form中method="post"3.用JSTL应该可以吧,没用过!我一般都用struts标签
      

  2.   

    把JSTL的lib和tld文件放在WEB-INF里,
      

  3.   

    我的编码GB2312和UTF-8我都试过了,可还是不行啊,表单提交总是乱码还有,我感觉STRUTS自带的标签库功能好像没有JSTL强大啊,各位怎么看的
      

  4.   

    是不是html和jsp混用的啊,统一成jsp用struts的html:form标签提交试试还有您的第二个问题,就像在问,我觉得笔记本硬盘没有台式机的强大啊,可以给我的移动硬盘换成台式机硬盘吗?当然可以,只要您不嫌用得不方便和把一个好好的东西弄得四不像了,struts标签的确有不好,但是真的需要所谓的“强大”吗?
      

  5.   

    TO 楼上,
    呵呵,我主要是想用纯粹的STRUTS标签来处理页面的显示逻辑,
    但是感觉有时办不到,
    所以会觉得STRUTS的标签库不够强大
      

  6.   


    我的编码GB2312和UTF-8我都试过了,可还是不行啊,表单提交总是乱码还有,我感觉STRUTS自带的标签库功能好像没有JSTL强大啊,各位怎么看的转多了
      

  7.   

    页面上用GB2312,web.xml中配置的filter重用UTF-8.你是用了支持国际化的properties文件,显示页面中文信息吧?那把这个文件转码成ascii就行了。用jdk中的native2ascii.exe转
      

  8.   

    TO 楼上,
    我没有用属性文件来显示页面上的中文,呵呵改成GB2312吗,好的,我试一下
      

  9.   

    如果没有用到国际化文件,在web.xml去掉,EncodingFilter也去掉JSP页面设为gb2312,formbean取值不可能是乱码!我天天用的,再不行把源码贴上了
      

  10.   

    我的编码GB2312和UTF-8我都试过了,可还是不行啊,表单提交总是乱码还有,我感觉STRUTS自带的标签库功能好像没有JSTL强大啊,各位怎么看的
    无语转码都不会会懂那个标签强大与否????????不会用就不要乱发评论。。做一个类继承ActionServlet,重写process方法。public class TestActionServlet extends ActionServlet { protected void process(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
    {
    try

    request.setCharacterEncoding("GB2312");
    System.out.println("COPActionServlet+GB2312");
    } catch(Exception e)
    {
    e.printStackTrace();
    System.out.println("error in setCharacterEncoding! COPActionServlet+GB2312");
    }
    super.process(request, response);
    }
    }wel.xml
    ... ...
    <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>TestActionServlet</servlet-class>
    <init-param>
    <param-name>config</param-name>
    <param-value>WEB-INF/struts-config.xml</param-value>
    </init-param>
    ... ....
      

  11.   

    我们全部同一使用iso8859-1字符集,解决了中文的问题,包括生僻汉字都没有问题
      

  12.   

    上面注意页面的编码全换成 GB2312,,,如果页面国际话仍然乱码用JAVA下的native2ascii.exe把资源文件处理一下!!!!!!!!
      

  13.   

    2.用Struts-Form提交数据时,会在URL里面看到表单数据,有时也会现出SessionId,请问有没有什么办法让它们不可见呢?你的Form连接ACTION设置怎么设置的?? 看样子一定是连基本的Struts框架都不是很了解!!汗 
    还有HTML和JSP标签混用完全没有问题,,出了问题是因为你们对Struts框架不懂原因!!!!!!!!
      

  14.   

    谢谢各位的帮助1.关于编码:
    为了既然在页面上显示中文,又能在提交表单后显示中文,我尝试了各位编码类型(主要是ISO8859-1,UTF-8,GB2312)和编码策略,
    最后用EncodingFilter字符编码过滤器彻底解决了中文乱码的问题,并发现以下规律(至少在我机上是这样的情况,我试了很多次,如果大家觉得不对可以批我)
    (1)为了在浏览器中运行时能看到正常的中文,并能以中文正常提交表单,编码只能用UTF-8,
    <%@ page contentType="text/html;charset=UTF-8" %>
    ISO-8859-1,GB2312均出现乱码
    (2)为了在JBUILDER 2006 里面预览时能看到正常的中文,须在<HEAD>标记里面写上:
      <meta content="text/html;charset=UTF-8" http-equiv="content-Type">
    ISO-8859-1,GB2312均出现乱码.不知道其它的编辑器是怎样的
    (3)用EncodingFilter字符编码过滤器对各个页面请求进行字符统一编码时,只能用GB2312,
    ISO-8859-1,GB2312均出现乱码以上是我的结论,已经过多次试验2.关于URL暴露参数值:
    这个我承认是我把POST写成了GET,很抱歉3.关地JSTL和STRUTS标签混用:
    其实我的意思是在STRUTS里面用JSTL标签会不会让页面风格不像STRUTS,
    不过那句话还是要说,JSTL的确比STRUTS的标签更强大,JSTL有的功能STRUTS标签没有。各位继续发表看法吧
      

  15.   

    另外说明一下我的测试环境:
    WinXP SP2 CHS
    TOMCAT 5.5.9
    JDK 1.5
    JBUILDER 2006
    STRUTS 1.2
      

  16.   

    写错了一点。。
    (3)用EncodingFilter字符编码过滤器对各个页面请求进行字符统一编码时,只能用GB2312,
    ISO-8859-1,UTF-8均出现乱码