有关Aglet的一个问题,困扰我好久了
yylzq 2007-06-21 07:07:30 我写了一个Aglet的程序,如下:
package example.test;
import java.io.IOException;
import java.net.URL;
import com.ibm.aglet.*;
import com.ibm.aglets.AgletRuntime;
import com.ibm.aglet.system.*;
import com.ibm.maf.*;
import com.ibm.aglets.tahiti.*;
import java.net.*;
import com.ibm.aglets.*;
import org.aglets.log.quiet.QuietInitializer;
import org.aglets.log.log4j.Log4jInitializer;
import com.ibm.awb.misc.Opt;
public class agletmain extends ContextAdapter {
public void agletActivated(ContextEvent ev) {
System.out.println("Aglet Activated : " + ev.getAgletProxy());
}
public void agletArrived(ContextEvent ev) {
System.out.println("Aglet Arrived : " + ev.getAgletProxy());
}
public void agletCloned(ContextEvent ev) {
System.out.println("Aglet Cloned : " + ev.getAgletProxy());
}
public void agletCreated(ContextEvent ev) {
System.out.println("Aglet Created : " + ev.getAgletProxy());
}
public void agletDeactivated(ContextEvent ev) {
System.out.println("Aglet Deactivated : " + ev.getAgletProxy());
}
public void agletDispatched(ContextEvent ev) {
System.out.println("Aglet Dispatched : " + ev.getAgletProxy());
}
public void agletDisposed(ContextEvent ev) {
System.out.println("Aglet Disposed : " + ev.getAgletProxy());
}
public void agletReverted(ContextEvent ev) {
System.out.println("Aglet Reverted : " + ev.getAgletProxy());
}
public static void main(String[] args) {
try{
Opt options[]={
Opt.Entry("-protocol","maf.protocol",null),
};
Opt.setopt(options);
Class.forName("org.aglets.log.quiet.QuietInitializer");
//Class.forName("org.aglets.log.log4j.Log4jInitializer");
com.ibm.aglets.AgletRuntime runtime =(com.ibm.aglets.AgletRuntime) com.ibm.aglets.AgletRuntime.getAgletRuntime();
String username="aglet_key";
String password="aglets";
String protocol="atp";
Object o=runtime.authenticateOwner(username,password);
if (o== null) {
System.err.println("Cannot authenticate the user \"" + username + "\"");
throw new Exception("User authentication failed.");
}
MAFAgentSystem maf_system=new com.ibm.aglets.MAFAgentSystem_AgletsImpl(runtime);
MAFAgentSystem.initMAFAgentSystem(maf_system,"atp");
Tahiti.initializeGUI();
Tahiti.installFactories();
AgletContext ctx=runtime.createAgletContext("test");
ctx.addContextListener(new agletmain());
Tahiti.installSecurity();
ctx.start();
AgletProxy pro=ctx.createAglet(null, "examples.hello.HelloAglet", null);
} catch (Exception e) {
e.printStackTrace();
}
}
}
在修改了.java.policy和java.policy后,运行没有权限方面的问题了,但老是报examples.hello.HelloAglet类不能发现,如下:
java.lang.ClassNotFoundException: propertytest at com.ibm.aglets.AgletContextImpl.createAglet(Unknown Source)
at com.ibm.aglets.AgletContextImpl.createAglet(Unknown Source)
这是怎么加速呀。我直接有agletsd运行Tahiti后用create来创建是没有问题的呀。