Use JSP Tag with content body

1.First add this to web.xml:

1
2
3
4
    <taglib>
      <taglib-uri>http://longshine.com/cufj</taglib-uri>
      <taglib-location>/WEB-INF/tlds/cufjTag.tld</taglib-location>
    </taglib>

2.Put the tld file into folder: /WEB-INF/tlds/. And the tld file is like this:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE taglib
  PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
  "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
    <tlib-version>1.0</tlib-version>
    <jsp-version>1.2</jsp-version>
    <short-name>cufjTag</short-name>
    <uri>http://longshine.com/cufj</uri>
 
    <tag>
      <name>role</name>
      <tag-class>longshine.telecom.mob.tag.RoleTag</tag-class>
      <body-content>JSP</body-content>
      <attribute>
      	<name>roleIds</name>
      	<required>true</required>
      </attribute>
    </tag>   
</taglib>

3.Now is the java class:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package longshine.telecom.mob.tag;
 
import java.io.IOException;
 
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.BodyContent;
import javax.servlet.jsp.tagext.BodyTagSupport;
 
import longshine.telecom.mob.common.SessionUserObject;
import longshine.telecom.mob.service.BaseService;
 
public class RoleTag extends BodyTagSupport {
 
	private static final long serialVersionUID = 1L;
	private String roleIds;
 
	public int doEndTag() throws JspException {
		BodyContent bc = getBodyContent();
		if (roleIds != null) {
			SessionUserObject sessionUserObject = (SessionUserObject) pageContext.getSession()
				.getAttribute(BaseService.SESSION_USER_OBJECT);
			if (sessionUserObject == null || sessionUserObject.getPermissions() == null) {
				return SKIP_BODY;
			}
			String[] roles = roleIds.split(",");
			for (int i = 0; i < roles.length; i++) {
				if (sessionUserObject.getPermissions().contains(roles[i])) {
					try {
						pageContext.getOut().print(bc.getString());
						return SKIP_BODY;
					} catch (IOException e) {
						e.printStackTrace();
					}
				}
			}
		}
		return SKIP_BODY;
	}
 
	public String getRoleIds() {
		return roleIds;
	}
 
	public void setRoleIds(String roleIds) {
		this.roleIds = roleIds;
	}
}

5.At last, you can write JSP with this tag, remember to declare this tag in the JSP head:
<%@taglib uri="http://longshine.com/cufj" prefix="c" %>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@taglib uri="http://longshine.com/cufj" prefix="c" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP TAG</title>
</head>
<body>
 
<c:role roleIds="002">
	<input type="text" name="n"></input>
</c:role>
 
</body>
</html>

Enjoy it!

Posted in JSP | Tagged , | 8 Comments

Change ip setting using bat command

Example:
1.Change to static:

netsh interface ip set address "Wireless Network Connection" source = static 10.206.15.184 255.255.255.0 10.206.15.1
netsh interface ip add dns name = "Wireless Network Connection" addr = 10.206.1.33
netsh interface ip add dns name = "Wireless Network Connection" addr = 58.22.96.66

2.Change to dhcp:

netsh interface ip set address "Wireless Network Connection" source = dhcp
netsh interface ip set dns name = "Wireless Network Connection" source = dhcp
Posted in dos | Tagged , | Leave a comment

how to install squid-2.5.STABLE13 on linux

To build and install the Squid Cache, type:

% ./configure –prefix=/usr/local/squid
% make all
% make install
Continue reading

Posted in linux | 1 Comment

validation problems when deploy an application in weblogic 10

Error message is:

Unable to access the selected application.
 
Exception in AppMerge flows' progression
 
Exception in AppMerge flows' progression
 
VALIDATION PROBLEMS WERE FOUND problem: cvc-complex-type.2.3: Element 'filter@http://java.sun.com/xml/ns/javaee' with element-only content type cannot have text content.: problem: cvc-complex-type.2.3: Element 'init-param@http://java.sun.com/xml/ns/javaee' with element-only content type cannot have text content.: problem: cvc-complex-type.2.3: Element 'init-param@http://java.sun.com/xml/ns/javaee' with element-only content type cannot have text content.: problem: cvc-complex-type.2.3: Element 'filter-mapping@http://java.sun.com/xml/ns/javaee' with element-only content type cannot have text content.:
 
VALIDATION PROBLEMS WERE FOUND problem: cvc-complex-type.2.3: Element 'filter@http://java.sun.com/xml/ns/javaee' with element-only content type cannot have text content.: problem: cvc-complex-type.2.3: Element 'init-param@http://java.sun.com/xml/ns/javaee' with element-only content type cannot have text content.: problem: cvc-complex-type.2.3: Element 'init-param@http://java.sun.com/xml/ns/javaee' with element-only content type cannot have text content.: problem: cvc-complex-type.2.3: Element 'filter-mapping@http://java.sun.com/xml/ns/javaee' with element-only content type cannot have text content.:

If you meet this error message, please check your web.xml and make sure it does not contain any unusual characters.

Posted in weblogic | Tagged | 4 Comments

open a port on linux server

=========================================
iptables -A RH-Firewall-1-INPUT -p tcp -m state –state NEW -m tcp –dport 3690 -j ACCEPT
=========================================
RH-Firewall-1-INPUT is the name of the chain, and change 3690 to the port number you expect.

You must restart the service to make it effective:
[root@localhost ~]# service iptables restart

Posted in linux | Tagged , | Leave a comment

make div align center

use style as:
.style{margin-left:auto;margin-right:auto;}

or
.style{margin:0 auto;}
for short

Posted in css | Tagged | Leave a comment

ORACLE UTL_RAW.BIT_AND

eg.
select to_number(UTL_RAW.bit_and(to_char(1), ’3′)) from dual;

Posted in oracle | Leave a comment

href and onclick method in ‘A’ tag

How to invoke onclick method but not go to the page head.

1
<a href="#" onclick="javascript:jsMethod();return false;">a link</a>
Posted in javascript | Tagged | Leave a comment

create a swing application

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
 
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
 
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JApplet;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.WindowConstants;
 
public class Test3 extends JApplet {
 
	public void init() {
		Container contentPane = getContentPane();
 
		Icon icon = new ImageIcon(ClassLoader.getSystemResource("swing.gif")); 
		JLabel label = new JLabel(icon);
//		java.net.URL codebase = getClass().getResource("../swing.gif");
//		JLabel label = new JLabel(new ImageIcon(codebase));
 
		contentPane.setLayout(new FlowLayout());
		contentPane.add(label);
	}
 
	public static void main(String args[]) {
		final JFrame f = new JFrame();
		JApplet applet = new Test3();
 
		applet.init();
 
		f.setContentPane(applet.getContentPane());
		f.setBounds(100, 100, 308, 199);
		f.setTitle("An Application");
		f.setVisible(true);
 
		f.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
 
		f.addWindowListener(new WindowAdapter() {
			public void windowClosed(WindowEvent e) {
				System.exit(0);
			}
		});
	}
}
Posted in swing | Tagged , | Leave a comment

how to read a url

String s = request.getRequestURL().toString();
URL url = new URL(s);
BufferedReader bf = new BufferedReader(new InputStreamReader(url.openStream()));
Posted in java | Leave a comment