jsp运行时错误,代码505?

test 下面XML配置文件内容表示对角色为common的用户,只对名为employeedetail 的页面元素即“详细...
jsp运行时错误,代码505?
控制客户端访问是开发一个基于B/S的架构的系统的开发者必须考虑的问题。JSP或SERVLET规范的基于配置文件的安全策略对资源的控制是以文件为单位的,即只可以定义某个视图全部可以或全部不能被访问。一个比较复杂的系统往往要要求对视图的一部分(如JSP页面里的一个按钮)提供访问控制,只允许被某种角色的用户访问。如果采用可编程的安全策略,因为对用户角色和操作的定义在开发时不能定义,而且这种策略加大了程序员的工作量,它可能不是一种好的办法。

我采用定制标签库和和配置文件来解决这个问题:把要权限控制的JSP页面元素如BUTTON,作为标签的内容。为受保护的内容起一个唯一的名称,把这个名称作为标签的一个属性。某个角色对某个页面元素或一组页面元素是否有权限,在XML配置文件中描述。

例如,下面的JSP页面有“详细”和“修改”两个按钮。

<%@ taglib uri="http://mytag" prefix="custTag" %>

<html>

<head>

<title>test</title>

</head>

<body >

<form name="form1" >

<table width="600" border="0" cellspacing="0" cellpadding="2" >

<tr>

<td>

<custTag:JspSecurity elementName="employeedetail" >

<input type="button" name="detail" value="详细" >

</custTag:JspSecurity>

<custTag:JspSecurity elementName="employeemodify" >

<input type="button" name="modify" value="修改" >

</custTag:JspSecurity>

</td>

</tr>

</table>

<br>

</form>

</body>

下面XML配置文件内容表示对角色为common的用户,只对名为employeedetail 的页面元素即“详细”按钮有权限,对角色为“admin”的用户,对名为employeedetail 和employeemodify的页面元素即两个按钮都有权限。

<?xml version="1.0" encoding="GB2312"?>

<security>

<htmlElement name="employeedetail" >

<roleName name="common" />

<roleName name="admin" />

</htmlElement>

<htmlElement name="employeemodify" >

<roleName name="admin" />

</htmlElement>

</security>

定制标签类JspSecurityTag继承了BodyTagSupport类。BodyTagSupport有一个变量bodyContent指向起始标志和结束标志之间的内容。JspSecurityTag的私有静态变量roleList保存从XML文件中取到角色和页面元素的对应集合,私有变量ElementName对应页面元素的名称。当解析该定制标签时,首先先取到页面元素的名称,再取到当前用户的角色,如果角色有该页面元素的权限,就显示标签正文(即页面元素),否则不显示。

Pagekage com.presentation.viewhelper.JspSecurityTag;

import javax.servlet.jsp.tagext.*;

import javax.servlet.jsp.*;

import java.util.*;

import org.xml.sax.*;

import org.xml.sax.helpers.*;

import org.w3c.dom.*;

import java.io.*;

太多了,发不完,自己去看吧2007-06-10
PName=trim(request("name"))
PType=request("type")
PMoney=request("money")
PInfo=request("info")

PContact=trim(request("Contact"))
PCategory=trim(request("Category"))

set rsZW=server.createobject("adodb.recordset")
sqltext="select * from [Product] where ID="&request("id")
rsZW.open sqltext,conn,1,3
rsZW("Product_name")=PName
rsZW("Product_type")=PType
rsZW("Product_money")=PMoney
rsZW("Product_info")=PInfo

rsZW("Product_Contact")=PContact
rsZw("Product_Category")=PCategory

rsZW("Product_person")=Session("User")

rsZW.update
rsZW.close
conn.close
response.write "<script language=JavaScript> {window.alert('此客户跟踪成功!');opener.parent.main.location.href='ProductInfo.asp';window.close();}</script>"
response.end
else
set rs=server.createobject("adodb.recordset")
sqltext="select * from [Product] where Id="&request("Id")&""
rs.open sqltext,conn,1,1
End If
%>2007-05-31
mengvlog 阅读 72 次 更新于 2025-09-11 05:10:56 我来答关注问题0
  • 下面XML配置文件内容表示对角色为common的用户,只对名为employeedetail 的页面元素即“详细”按钮有权限,对角色为“admin”的用...

  • 若代码中未发现拼写错误,继续排查逻辑错误。确保JSP页面中的逻辑运算、循环、条件判断等符合预期。检查是否有逻辑上的错误,如条件语句未正确闭合、变量未正确赋值或使用等。JSP脚本可能会因逻辑错误而引发异常,进而导致500错误。同时,注意检查JSP页面与Java后端的交互。确认页面请求是否正确发送到后端处理,...

  •  养基人Jon 为什么myeclipse中jsp出现了500错误?

    500错误一般是服务器内部错误,可能是您的JSP文件有语法错误或者其他问题导致的服务器无法正确运行JSP页面。以下可以尝试解决该问题的步骤:检查JSP文件中是否有语法错误。在myeclipse中进行开发时,即使没有编译错误,JSP文件也有可能存在语法错误。建议使用Eclipse自带的JSP编辑器或其他JSP编辑器检查代码的正确性...

  •  翡希信息咨询 JSP中提示HTTP错误代码:500 MalformedInputException,这个是什么原因引起的呢? 求各路大虾们帮忙。 orz

    JSP中提示HTTP错误代码500 MalformedInputException,这个错误通常是由IBM JDK 1.4中对io通道异常处理策略的改变引起的。具体来说,IBM在JDK 1.4中为了提高io通道的效率,改变了对异常的处理方式,使其比JDK 1.3更为严格,从而可能导致在某些情况下报告MalformedInputException错误。解决方法如下:修改JVM...

  •  誉祥祥知识 JSP程序怎么运行啊

    为了运行JSP程序,您需要下载一个名为Tomcat的J2EE容器。将JSP文件复制到Tomcat的webapp目录下即可,Tomcat默认的端口号是8080,因此您可以使用如下链接进行访问:http://127.0.0.1:8080/myProject,其中“myProject”是您的JSP工程名称。在启动Tomcat之前,您需要安装JDK。此外,还需要确保数据库与JSP代码...

檬味博客在线解答立即免费咨询

报错相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部