package qdgxy.tag;
import com.opensymphony.xwork2.util.ValueStack;
import org.apache.struts2.components.Component;
import qdgxy.domain.User;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.io.Writer;
public class AComponent extends Component {
private String actionURL;
private String value;
private String onclick = "";
private HttpServletRequest request;
@Override
public boolean start(Writer writer) {
HttpSession session = request.getSession();
User user = (User) session.getAttribute("user");
if (user.hasPrivilegeByURL(actionURL)) {
try {
writer.write("<a href='" + formatURL(actionURL) + "' onClick='" + onclick + "'>" + value + "</a>");
} catch (IOException e) {
e.printStackTrace();
}
return true;
} else {
return super.start(writer);
}
}
private String formatURL(String url) {
int index = url.indexOf('?');
if (index != -1) {
String params = url.substring(index);
url = url.substring(0, index) + ".action" + params;
} else {
url = url + ".action";
}
return url;
}
public AComponent(ValueStack stack, HttpServletRequest request) {
super(stack);
this.request = request;
}
public String getActionURL() {
return actionURL;
}
public void setActionURL(String actionURL) {
this.actionURL = actionURL;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public String getOnclick() {
return onclick;
}
public void setOnclick(String onclick) {
this.onclick = onclick;
}
}
package qdgxy.tag;
import com.opensymphony.xwork2.util.ValueStack;
import org.apache.struts2.components.Component;
import org.apache.struts2.views.jsp.ComponentTagSupport;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ATag extends ComponentTagSupport {
private String actionURL;
private String value;
private String onclick = "";
@Override
public Component getBean(ValueStack valueStack, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
return new AComponent(valueStack, httpServletRequest);
}
@Override
protected void populateParams() {
AComponent component = (AComponent) getComponent();
component.setActionURL(actionURL);
component.setValue(value);
component.setOnclick(onclick);
}
public String getOnclick() {
return onclick;
}
public void setOnclick(String onclick) {
this.onclick = onclick;
}
public String getActionURL() {
return actionURL;
}
public void setActionURL(String actionURL) {
this.actionURL = actionURL;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<taglib>
<tlib-version>1.0</tlib-version>
<jsp-version>2.0</jsp-version>
<short-name>oa</short-name>
<uri>/WEB-INF/OATag.tld</uri>
<tag>
<name>a</name>
<tag-class>qdgxy.tag.ATag</tag-class>
<body-content>scriptless</body-content>
<attribute>
<name>actionURL</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>value</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>onclick</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有