public class SimplePrincipal implements Principal, Serializable
35 {
36 private static final long serialVersionUID = 7701951188631723261L;
37 private final String name;
38
39 public SimplePrincipal(String name)
40 {
41 this.name = name;
42 }
ClassPool cp = ClassPool.getDefault();
CtClass cc = cp.get("org.jboss.security.SimplePrincipal");
CtConstructor ctc = cc.getConstructors()[0];
ctc.setBody("{name=\"modify name\";this.name = name;}");
SimplePrincipal sp=(SimplePrincipal)cc.toClass().getConstructor(String.class).newInstance("name");
System.out.println(sp.getName());
SimplePrincipal pp=new SimplePrincipal("ww");
System.out.println(pp.getName());
输出
modify name