aglets-developer Mailing List for Aglet Software Development Kit (Page 2)
Status: Beta
Brought to you by:
cat4hire
You can subscribe to this list here.
2001 |
Jan
|
Feb
(17) |
Mar
(24) |
Apr
(4) |
May
(3) |
Jun
(5) |
Jul
(17) |
Aug
(29) |
Sep
(3) |
Oct
(19) |
Nov
(4) |
Dec
(12) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(8) |
Feb
(9) |
Mar
(4) |
Apr
(6) |
May
(8) |
Jun
|
Jul
(57) |
Aug
(2) |
Sep
(4) |
Oct
(7) |
Nov
(2) |
Dec
(1) |
2003 |
Jan
(25) |
Feb
(21) |
Mar
(20) |
Apr
(3) |
May
(10) |
Jun
(8) |
Jul
(8) |
Aug
(1) |
Sep
(6) |
Oct
(10) |
Nov
(13) |
Dec
(10) |
2004 |
Jan
(6) |
Feb
(5) |
Mar
(7) |
Apr
(18) |
May
(13) |
Jun
(5) |
Jul
(2) |
Aug
(6) |
Sep
(11) |
Oct
(10) |
Nov
(4) |
Dec
(4) |
2005 |
Jan
(2) |
Feb
(16) |
Mar
(14) |
Apr
(8) |
May
(2) |
Jun
(6) |
Jul
(1) |
Aug
(1) |
Sep
(5) |
Oct
(21) |
Nov
(8) |
Dec
|
2006 |
Jan
|
Feb
|
Mar
(7) |
Apr
(2) |
May
(1) |
Jun
(3) |
Jul
|
Aug
(2) |
Sep
|
Oct
(7) |
Nov
|
Dec
|
From: x r. <xr...@ho...> - 2005-11-02 03:03:29
|
SOS,SOS,SOS,SOS!!!!!!!!!!!!!!!!!!!!! In order to get a secure Aglets,I wanna make some modifications for Aglets.So I modified two file-LocalAgletRef.java(<aglets-home>/src/com/ibm/aglets) & AgletContextImpl.java(<aglets-home>/src/com/ibm/aglets).Now I make some directions for my modifications for their code. Here I list the codes I have added into the corresponding source files. In the method: void dispatch(MessageImpl msg, Ticket ticket) in LocalAgletRef.java,the adding parts are as follow: /-------------------------------------------------------------------------------------------------------/ /*******对其进行改造所加的API******************************/ import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.SecureRandom; import java.security.Signature; import java.security.Provider; import javax.crypto.Cipher; import java.security.interfaces.RSAPublicKey; import javax.crypto.*; import java.io.*; import com.ibm.aglet.AgletID; /***************************************************/ //There are some codes(here omitted) SecureRandom random = new SecureRandom(); KeyPair kp; Cipher c; byte[] encrypted1=new byte[50000]; int encrypted_length=0; try{ KeyGenerator keygen = KeyGenerator.getInstance("DES","SunJCE"); SecretKey desKey = keygen.generateKey(); c = Cipher.getInstance("DES/ECB/PKCS5Padding","SunJCE"); c.init(c.ENCRYPT_MODE,desKey); byte[] encrypted2 = c.doFinal(agent); encrypted_length=encrypted2.length; for(int i=0;i<encrypted2.length;i++) encrypted1[i]=encrypted2[i]; //Serialize FileOutputStream fos=new FileOutputStream("F:/temp050829/RSAprivatekey"); ObjectOutputStream oos=new ObjectOutputStream(fos); oos.writeObject(desKey); oos.flush(); oos.close(); /*******************************************************/ } catch(Throwable t) { t.printStackTrace(); } byte[] encrypted=new byte[encrypted_length]; for(int i=0;i<encrypted_length;i++) encrypted[i]=encrypted1[i];//The last byte array encrypted. //All the following codes are omitted! /-------------------------------------------------------------------------------------------------------/ In the method: public void receiveAglet(Name agent_name, ClassName[] classnames, String codebase, byte[] agent, String sender) in AgletContextImpl.java,the adding parts are as follow: /*******对其进行改造所加的API******************************/ import java.security.KeyPair; import java.security.PrivateKey; import java.security.KeyPairGenerator; import java.security.SecureRandom; import java.security.Signature; import java.security.interfaces.RSAPublicKey; import javax.crypto.*; import java.io.*; /***************************************************/ SecureRandom random = new SecureRandom(); //KeyPair kp; Cipher c; byte[] decrypted1=new byte[50000]; int decrypted_length=0; //There are some codes(here omitted) try{ FileInputStream fis=new FileInputStream("F:/temp050829/RSAprivatekey"); ObjectInputStream ois=new ObjectInputStream(fis); SecretKey desKey=(SecretKey)ois.readObject(); ois.close(); c = Cipher.getInstance("DES/ECB/PKCS5Padding","SunJCE"); c.init(c.DECRYPT_MODE, desKey); byte[] decrypted2 = c.doFinal(agent); decrypted_length=decrypted2.length; for(int i=0;i<decrypted2.length;i++) decrypted1[i]=decrypted2[i]; } catch(Throwable t) { t.printStackTrace(); } byte[] decrypted=new byte[decrypted_length]; for(int i=0;i<decrypted_length;i++) decrypted[i]=decrypted1[i]; //All the following codes are omitted! /-------------------------------------------------------------------------------------------------------/ I make an experiment in one host,opening two Aglets server.When I send one aglet to from one server to another.Some exceptions come into being on the sender java.security.NoSuchProviderException: No such provider: SunJCE at javax.crypto.SunJCE_b.a(DashoA6275) at javax.crypto.KeyGenerator.getInstance(DashoA6275) at com.ibm.aglets.LocalAgletRef.dispatch(LocalAgletRef.java:977) at com.ibm.aglets.SystemMessage.handle(Unknown Source) at com.ibm.aglets.AgletThread.run(Unknown Source) and there are some exceptions on the receiver: java.security.NoSuchProviderException: Provider 'SunJCE' not found at javax.crypto.Cipher.getInstance(DashoA6275) at com.ibm.aglets.AgletContextImpl.receiveAglet(AgletContextImpl.java:937) at com.ibm.aglets.MAFAgentSystem_AgletsImpl$2.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.ibm.aglets.MAFAgentSystem_AgletsImpl.receive_agent(Unknown Source) at com.ibm.maf.atp.ConnectionHandler.handleDispatchRequest(Unknown Source) at com.ibm.maf.atp.ConnectionHandler.handleRequest(Unknown Source) at com.ibm.maf.atp.ConnectionHandler.handle(Unknown Source) at com.ibm.maf.atp.ConnectionHandler.run(Unknown Source) But what I wanna say is that when I try this code in one single java file(as shown below),the program can run normally,and get the right result.The program is that: import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.SecureRandom; import java.security.Signature; import java.lang.Integer; import java.lang.Byte; import java.io.*; import java.security.interfaces.RSAPublicKey; import javax.crypto.*; public class mytest2 { public static void main(String[] args) { byte[] agent="we love you,my little boys!".getBytes(); SecureRandom random = new SecureRandom(); KeyPair kp; Cipher c; byte[] encrypted1=new byte[50000]; int encrypted_length=0; try{ KeyGenerator keygen = KeyGenerator.getInstance("DES","SunJCE"); SecretKey desKey = keygen.generateKey(); c = Cipher.getInstance("DES/ECB/PKCS5Padding","SunJCE"); c.init(c.ENCRYPT_MODE,desKey); byte[] encrypted2 = c.doFinal(agent); c.init(c.DECRYPT_MODE, desKey); byte[] data2 = c.doFinal(encrypted2); System.out.println(new String(encrypted2)); System.out.println(new String(data2)); encrypted_length=encrypted2.length; for(int i=0;i<encrypted2.length;i++) encrypted1[i]=encrypted2[i]; FileOutputStream fos=new FileOutputStream("F:/temp050829/mytest2key"); ObjectOutputStream oos=new ObjectOutputStream(fos); oos.writeObject(desKey); oos.flush(); oos.close(); } catch(Throwable t) { t.printStackTrace(); } byte[] encrypted=new byte[encrypted_length]; for(int i=0;i<encrypted_length;i++) encrypted[i]=encrypted1[i]; System.out.println(new String(encrypted)); } } By the way,all the configurations for Aglets and Java in my computer are correct.What’s wrong with it?Please help me,thanks very much! I think maybe we need make some changes for the file aglets.policy,adding some entries about Provider information,but what entries should i add to this file?how to do it? Hope u can give me some cues very much!Thanks a lots!!!! _________________________________________________________________ 与联机的朋友进行交流,请使用 MSN Messenger: http://messenger.msn.com/cn |
From: x r. <xr...@ho...> - 2005-11-01 16:35:03
|
Cat: h r u? In my project about Aglets,i met with some questions,now hope u can help me,thanx! In order to get a secure Aglets,I wanna make some modifications for Aglets.So I modified two file-LocalAgletRef.java(<aglets-home>/src/com/ibm/aglets) & AgletContextImpl.java(<aglets-home>/src/com/ibm/aglets).Now I make some directions for my modifications for their code. Here I list the codes I have added into the corresponding source files. In the method: void dispatch(MessageImpl msg, Ticket ticket) in LocalAgletRef.java,the adding parts are as follow: /-------------------------------------------------------------------------------------------------------/ /*******对其进行改造所加的API******************************/ import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.SecureRandom; import java.security.Signature; import java.security.Provider; import javax.crypto.Cipher; import java.security.interfaces.RSAPublicKey; import javax.crypto.*; import java.io.*; import com.ibm.aglet.AgletID; /***************************************************/ //There are some codes(here omitted) SecureRandom random = new SecureRandom(); KeyPair kp; Cipher c; byte[] encrypted1=new byte[50000]; int encrypted_length=0; try{ KeyGenerator keygen = KeyGenerator.getInstance("DES","SunJCE"); SecretKey desKey = keygen.generateKey(); c = Cipher.getInstance("DES/ECB/PKCS5Padding","SunJCE"); c.init(c.ENCRYPT_MODE,desKey); byte[] encrypted2 = c.doFinal(agent); encrypted_length=encrypted2.length; for(int i=0;i<encrypted2.length;i++) encrypted1[i]=encrypted2[i]; //Serialize FileOutputStream fos=new FileOutputStream("F:/temp050829/RSAprivatekey"); ObjectOutputStream oos=new ObjectOutputStream(fos); oos.writeObject(desKey); oos.flush(); oos.close(); /*******************************************************/ } catch(Throwable t) { t.printStackTrace(); } byte[] encrypted=new byte[encrypted_length]; for(int i=0;i<encrypted_length;i++) encrypted[i]=encrypted1[i];//The last byte array encrypted. //All the following codes are omitted! /-------------------------------------------------------------------------------------------------------/ In the method: public void receiveAglet(Name agent_name, ClassName[] classnames, String codebase, byte[] agent, String sender) in AgletContextImpl.java,the adding parts are as follow: /*******对其进行改造所加的API******************************/ import java.security.KeyPair; import java.security.PrivateKey; import java.security.KeyPairGenerator; import java.security.SecureRandom; import java.security.Signature; import java.security.interfaces.RSAPublicKey; import javax.crypto.*; import java.io.*; /***************************************************/ SecureRandom random = new SecureRandom(); //KeyPair kp; Cipher c; byte[] decrypted1=new byte[50000]; int decrypted_length=0; //There are some codes(here omitted) try{ FileInputStream fis=new FileInputStream("F:/temp050829/RSAprivatekey"); ObjectInputStream ois=new ObjectInputStream(fis); SecretKey desKey=(SecretKey)ois.readObject(); ois.close(); c = Cipher.getInstance("DES/ECB/PKCS5Padding","SunJCE"); c.init(c.DECRYPT_MODE, desKey); byte[] decrypted2 = c.doFinal(agent); decrypted_length=decrypted2.length; for(int i=0;i<decrypted2.length;i++) decrypted1[i]=decrypted2[i]; } catch(Throwable t) { t.printStackTrace(); } byte[] decrypted=new byte[decrypted_length]; for(int i=0;i<decrypted_length;i++) decrypted[i]=decrypted1[i]; //All the following codes are omitted! /-------------------------------------------------------------------------------------------------------/ I make an experiment in one host,opening two Aglets server.When I send one aglet to from one server to another.Some exceptions come into being on the sender java.security.NoSuchProviderException: No such provider: SunJCE at javax.crypto.SunJCE_b.a(DashoA6275) at javax.crypto.KeyGenerator.getInstance(DashoA6275) at com.ibm.aglets.LocalAgletRef.dispatch(LocalAgletRef.java:977) at com.ibm.aglets.SystemMessage.handle(Unknown Source) at com.ibm.aglets.AgletThread.run(Unknown Source) and there are some exceptions on the receiver: java.security.NoSuchProviderException: Provider 'SunJCE' not found at javax.crypto.Cipher.getInstance(DashoA6275) at com.ibm.aglets.AgletContextImpl.receiveAglet(AgletContextImpl.java:937) at com.ibm.aglets.MAFAgentSystem_AgletsImpl$2.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.ibm.aglets.MAFAgentSystem_AgletsImpl.receive_agent(Unknown Source) at com.ibm.maf.atp.ConnectionHandler.handleDispatchRequest(Unknown Source) at com.ibm.maf.atp.ConnectionHandler.handleRequest(Unknown Source) at com.ibm.maf.atp.ConnectionHandler.handle(Unknown Source) at com.ibm.maf.atp.ConnectionHandler.run(Unknown Source) But what I wanna say is that when I try this code in one single java file(as shown below),the program can run normally,and get the right result.The program is that: import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.SecureRandom; import java.security.Signature; import java.lang.Integer; import java.lang.Byte; import java.io.*; import java.security.interfaces.RSAPublicKey; import javax.crypto.*; public class mytest2 { public static void main(String[] args) { byte[] agent="we love you,my little boys!".getBytes(); SecureRandom random = new SecureRandom(); KeyPair kp; Cipher c; byte[] encrypted1=new byte[50000]; int encrypted_length=0; try{ KeyGenerator keygen = KeyGenerator.getInstance("DES","SunJCE"); SecretKey desKey = keygen.generateKey(); c = Cipher.getInstance("DES/ECB/PKCS5Padding","SunJCE"); c.init(c.ENCRYPT_MODE,desKey); byte[] encrypted2 = c.doFinal(agent); c.init(c.DECRYPT_MODE, desKey); byte[] data2 = c.doFinal(encrypted2); System.out.println(new String(encrypted2)); System.out.println(new String(data2)); encrypted_length=encrypted2.length; for(int i=0;i<encrypted2.length;i++) encrypted1[i]=encrypted2[i]; FileOutputStream fos=new FileOutputStream("F:/temp050829/mytest2key"); ObjectOutputStream oos=new ObjectOutputStream(fos); oos.writeObject(desKey); oos.flush(); oos.close(); } catch(Throwable t) { t.printStackTrace(); } byte[] encrypted=new byte[encrypted_length]; for(int i=0;i<encrypted_length;i++) encrypted[i]=encrypted1[i]; System.out.println(new String(encrypted)); } } By the way,all the configurations for Aglets and Java in my computer are correct.What’s wrong with it?Please help me,thanks very much! _________________________________________________________________ 享用世界上最大的电子邮件系统― MSN Hotmail。 http://www.hotmail.com |
From: Lynne G. <lyn...@cs...> - 2005-10-28 20:25:36
|
We are having problems with accessing an EJB from an Aglet. We can run the same code as a standalone application with no problem. But, when we wrap it up as an Aglet and then create in Tahiti we get a problem. I have attached (see below) the message we are getting. We think it may be a security issue but, cant see how to fix it in the aglets propoerties file (nor in the java properties file). PLEASE we are absolutely stuck here and need to have this work. Any help please email lyn...@cs... Thank you, Lynne Grewe California State University East Bay. |
From: Renan S. <ren...@gm...> - 2005-10-27 09:41:21
|
Hi... Is there any way to run an agent (send bit, retract it, etc.) by command line (DOS prompt) or by any Java command ? Thanx a lot, -Renan -- []'s static(_,_,fail(_),"RenanCFSouza",0,0,0,0). |
From: Luca F. <cat...@us...> - 2005-10-26 17:03:24
|
Anil Kumar's cat, on 16/10/2005 6.51, walking on the keyboard wrote: > I got a compilation error at one import line that > syas "import com.ibm.aglet.message.MessageException; " > . > There is no com.ibm.aglet.message directory at all . > So i just removed this "message" directory and used > " com.ibm.aglet.MessageException; " and compilation > was successful . > > (Note : you may need to correct this error and upload > it again to CVS.) You're right, I had messed up the CVS, please be patiente, I'll fix the compilation problems in the CVS repository. Coming back to your problem, I've tried the attached agents within my system and they are working. Since they are similar to yours, I think the problem is on your systems, but I'm not sure what the problem could be (note: I used the 2.0.2 version downloaded from the web site). For the remote messaging, I think there could be a problem with a firewall, but I don't understand what the local messaging problem can be. Could you try my agents on your machine please? Moreover, try to connect with a telnet client to the remote machine on the 4434 port (or whatever port you are running the remote aglet daemon). Finally, what happens if you involve remote messaging within the same host, that means running two platforms on the same host? Thanks, Luca > > Then i created a new "aglets-2.0.2.jar" with the > directories "com.xx.xx and org.xx.xx.xx " > > I used this new jar file "aglets-2.0.2.jar" while > running the application to check for local Mesaging > . > > Now i am not getting any exception like earlier ( > Earlier i got com.ibm.aglet.NotHandledException ) , > but on the agletB side (where message is being > handled ) looks like .. handleMessage( ) is not being > called at all. > > I am noy sure why it is behavving like that . > > I kept two SOP statements ( please look into the > agletB code pasted in the bottom ) in the > " public boolean handleMessgae(Message msg){ } " > to check whether control is coming to that function > or not at all ? Those two statements are not being > printed at all. > > I guess handleMessage() will always be looking for in > coming messages once the aglet is initiated. > > Do we have to explicitly call the handleMessage > ()....? > > I even send around 4 messages thinking that it will > give me some clue. But no clue at all. > > Please help me to know what is happening here. > Is the new "com.ibm.aglets.FutureReplyImpl.java" you > uploaded causing some other problem solving the > cancel method problem...? > > > Following is the out put on Thahithi console ... > ------------------------OUTPUT-------------------------- > $$$$$$$$$ The new agent ( aglet B) has ID > =a330bf4ef9619d66 > localProxy is :AgletProxyImpl : Aglet [active] > ClassName [baglets.agletB] > Identifier[a330bf4ef9619d66] > Owner[CN=anilkumar, OU=erl, O=umr, L=rolla, > ST=mo, C=us] > CodeBase[atp://r24intelsys:4434/] > CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us > Sending a new message again > I am aglet B : myID is :a330bf4ef9619d66 > Sending a new message again > Sending a new message again > Sending a new message again > Sending a new message again > ------------------------OUTPUT------------------------- > > For your reference i am copying the agletB and > agletA > code here ... > > ------------------agletA-----------------------STARTS > package baglets; > import com.ibm.aglet.*; > import java.net.*; > public class agletA extends Aglet { > public void run() > { > try > { > //Get the aglet context > AgletContext context = > this.getAgletContext(); > > //Create the agletB instance. > AgletProxy localProxy = > context.createAglet(null, "baglets.agletB", null); > > //Save the new aglet ID > AgletID loacalID = > localProxy.getAgletID(); > System.out.println(" $$$$$$$$$$ The > new agent ( aglet B) has ID ="+loacalID); > > try > { > System.out.println(" localProxy is > :"+localProxy); > //Send message to the remote agent > for(int i=0 ;i<5;i++) > { > System.out.println(" Sending a > new message again"); > localProxy.sendMessage(new > Message("HELL")); > pause(); > } > } > catch(Exception e) > { > System.out.println("Message is not > sent .Exception is :"+e); > e.printStackTrace(); > } > } > catch(Exception e ) > { > System.out.println("Exception is :"+e); > } > } > > private static long SLEEP = 2000; > > private void pause() { > try { > Thread.sleep(SLEEP); > } catch (InterruptedException ie) { } > > } > } > -----------------agletA-----------------------ENDS > > > -----------------agletB-----------------------STARTS > > package baglets; > import com.ibm.aglet.*; > import java.net.*; > > public class agletB extends Aglet { > > public void run() > { > try > { > AgletID myID = this.getAgletID(); > System.out.println(" I am aglet B : myID > is :"+myID); > } > catch (Exception e) > { > System.out.println("Exception is :"+e); > } > } > > //handle the message. > public boolean handleMessgae(Message msg) > { > System.out.println("I am aglet B . I am at the > start of the handleMessgae() "); > > if( msg.sameKind("HELL")) > { > System.out.println("I am aglet B .HELLO > message received from agletA."); > return true; > } > return false; > } > } > > -----------------agletB-----------------------ENDS > > > Please let me know what can i do to find the > problem. This simple problem is eating lot of my time. > > Appreciate your help. > > Thanks > Anil > > > --- Luca Ferrari <cat...@us...> > wrote: > > >>Anil Kumar's cat, on 11/10/2005 21.11, walking on >>the keyboard wrote: >> >>>Stack trace with local proxy .... Local messaging >> >>. >> >>>------STARTS >>> >>> $$$$$$$$$$ The new agent has ID >> >>=e308f78be33d8ad4 >> >>> localProxy is :AgletProxyImpl : Aglet [active] >>> ClassName [baglets.agletB] >>> Identifier[e308f78be33d8ad4] >>> Owner[CN=anilkumar, OU=erl, O=umr, L=rolla, >>>ST=mo, C=us] >>> CodeBase[atp://r24intelsys:4434/] >>>CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us >>> myID is :e308f78be33d8ad4 >>>Message is not sent .Exception is >>>:com.ibm.aglet.NotHandledException: [Message : >> >>kind = >> >>>HELLO: arg = {}: priority = 5] >>>com.ibm.aglet.NotHandledException: [Message : kind >> >>= >> >>>HELLO: arg = {}: priority = 5] >>> at >>>com.ibm.aglets.FutureReplyImpl.cancel(Unknown >> >>Source) >> > > I've uploaded a versione of FutureReplyImpl a few > days ago that should > avoid this problem, since the cancel method is quite > rude and raises > often the exception. I'm still investigating on the > "why" of such > implementation. > > Luca > +-------------------------------+ > Luca Ferrari > cat...@us... > > The Aglets Project: > http://aglets.sourceforge.net > +-------------------------------+ > > > > > > __________________________________ > Yahoo! Music Unlimited > Access over 1 million songs. Try it free. > http://music.yahoo.com/unlimited/ > > -- +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ |
From: Fred J. <fj...@ya...> - 2005-10-21 21:12:47
|
It looks like a SCAM, they ask you for your username and password on a site that is NOT eBay! |
From: Renan S. <ren...@gm...> - 2005-10-21 12:16:39
|
Hi there. I'm doing an application to search informantion on a corporative intranet using aglets but i'm having some problems. Would you be so kind as to giving me a step-by-step explanation of how to solve this problem: how to compile and run aglets on an application that packs external JARs (like Hibernate classes and DAO's) ? Thanks a lot, -Renan -- []'s static(_,_,fail(_),"RenanCFSouza",0,0,0,0). |
From: Anil K. <akr...@ya...> - 2005-10-20 07:40:49
|
Hi Luca and All, Hope you are trying to solve this remote messaging problem .I think you working on this problem as i did not see any reply or hint for this message for the past 1 week . I was also trying to solve this problem at my end . Thought of giving the update i got as it may give you clue to get the problem solved. I was just trying to test remote messaging with some of the code that was given in the "agletbook" code. I used the files "Parallel1Example.java" and "Worker1.java" . Here Parallel1Example is creating the agent "Worker1" and dispatching that to a remote machine.While "Worker1 " is being created proxy of the Parallel1Example is passed as the third argument for the createAglet() method. Once the "Worker1" reaches the remote system , it is able to send the message to the parent i.e to Parallel1Example . On my ststems i tried this code and these two are able to communicate properly.I mean worker1 ias able to send a remote message to Parallel1Example without any errors. May be you can see the code of "Parallel1Example.java" and "Worker1.java" which can give you a clue for what might be the problem. I attached the source files i used for testing , to this message for your easy reference. Please let me know if you find some thing that will solve the problem. Thanks Anil --- Anil Kumar <akr...@ya...> wrote: > Hi Luca and ALL , > > After setting the classpaths properly i run the > following command at command prompt > " java com.ibm.maf.rmi.MAFFInder_RMIImpl " and i > got > the follwoing message . > > ------------------------------------------- > akvz2@r24intelsys lib]$ pwd > /home/akvz2/java/aglets/lib > [akvz2@r24intelsys lib]$ java > com.ibm.maf.rmi.MAFFinder_RMIImpl > MAFFinder bound in local registry > name: MAFFinder > port: 4435 > ------------------------------------------- > > Now i tried for remote messaging between agletA and > > agletB .( A the bottom i pasted the code i used for > > agletA and agletB for remote messaging.) > > I got the following message at the thahithi console > prompt ... > > ---------------------------------------------- > $$$$$$$$$$ The new agent has ID > =b526aec0c16aa03c > ***** Addr: atp://131.151.8.211 place: > No integrity check because no security domain is > authenticated. > remoteProxy is :AgletProxyImpl : RemoteAgletRef : > null .. WeakRef[count=1] > > ---------------------------------------------- > > Strangely .. this time no exception is being thrown > like earlier.Earlier i used to get > com.ibm.aglet.NotHandledException . I guess the > exception is not coming because of your new > "com.ibm.aglets.FutureReplyImpl.java" file. > > But i have a doubt .. Is message is being sent or > not > at all ..? > > I tested this remote messaging code when MAFFinder > is > running on a different terminal on the same system > where aglets thahithi is running AND when > MAFFinder > is not running .Both times i got the same out put as > i > shoed above. > > Please let me know what else i can do to make the > remote messaging working .It is very crucial for my > project to have remote and local messaging working. > If > i am not able to achieve this .. the purpose of > using > aglets for my project is defeated :-) . I will be in > lot of touble : :-/ :( . > > Following is the agletA and agletB code i used > for > remote Messaging. > > -------------------------Remote Mesaing : > agletA------ > > package old; > import com.ibm.aglet.*; > import java.net.*; > > public class agletA extends Aglet { > > public void run() > { > try > { > //Get the aglet context > AgletContext context = > this.getAgletContext(); > > //Create the agletB instance. > AgletProxy toMove = > context.createAglet(null, "old.agletB", null); > > //Save the new aglet ID > AgletID remoteID = toMove.getAgletID(); > System.out.println(" $$$$$$$$$$ The > new agent has ID ="+remoteID); > > //Migrate the new agent > String remoteContext = > "atp://131.151.8.211:4434"; > URL url = new URL(remoteContext); > toMove.dispatch(url); > > //Get the remote Proxy > AgletProxy remoteProxy = > context.getAgletProxy(url,remoteID); > > try > { > System.out.println(" remoteProxy is > :"+remoteProxy); > //Send message to the remote agent > remoteProxy.sendMessage(new > Message("HELL")); > } > catch(Exception e) > { > System.out.println("Message is not > sent .Exception is :"+e); > e.printStackTrace(); > } > } > catch(Exception e ) > { > System.out.println("Exception is :"+e); > } > } > } > > > ----------RemoteMessaging agletB-------------------- > > package old; > import com.ibm.aglet.*; > import java.net.*; > > public class agletB extends Aglet { > > public void run() > { > try > { > AgletID myID = this.getAgletID(); > System.out.println(" In aglet B .myID is > :"+myID); > } > catch (Exception e) > { > System.out.println("Exception is :"+e); > } > } > > //handle the message. > public boolean handleMessgae(Message msg) > { > System.out.println(" Just entered in the > handleMessgae () of agletB ."); > if( msg.sameKind("HELL")) > { > System.out.println("I am aglet . HELLO > message received from agletA. "); > return true; > } > return false; > } > } > > > Appreciate your help ... > > Thanks > Anil > > > --- Luca Ferrari <cat...@us...> > wrote: > > Anil Kumar's cat, on 11/10/2005 21.11, walking on > the keyboard wrote: > > >$$$$$$$$$$ The new agent has ID > > =dbd9468f8f969b9e > > > myID is :dbd9468f8f969b9e > > > ***** Addr: atp://131.151.8.211 place: > > > No integrity check because no security domain is > > > authenticated. > > > remoteProxy is :AgletProxyImpl : RemoteAgletRef > : > > > null .. WeakRef[count=1] > > > Message is not sent .Exception is > > > :com.ibm.aglet.NotHandledException: > > > com.ibm.maf.NotHandled:null > > > com.ibm.aglet.NotHandledException: > > > com.ibm.maf.NotHandled:null > > > at > > > com.ibm.aglets.MessageBroker.sendMessage(Unknown > > > Source) > > > Here the exception should be raised due to a > problem > with the MAF > system. Have you tried running the MAFFINDER has I > === message truncated === __________________________________ Start your day with Yahoo! - Make it your home page! http://www.yahoo.com/r/hs |
From: Renan S. <ren...@gm...> - 2005-10-17 12:22:40
|
Hi there. I'm doing an application to search informantion on a corporative intranet using aglets but i'm having some problems. Would you be so kind as to giving me a step-by-step explanation of how to solve this problem: how to compile and run aglets on an application that packs external JARs (like Hibernate classes and DAO's) ? Thanks a lot, -Renan --- []'s static(_,_,fail(_),"RenanCFSouza",0,0,0,0). |
From: Phani I. <pha...@ya...> - 2005-10-16 07:07:48
|
Hi Luca and ALL, So you are saying to use an agent (called Manager agent) just for maintaining taskids info. I guess this ManagerAgent should always be running on every system once the aglets Server (Thahithi) is running .Good technique. So in my application .. when the first aglet comes in to the aglets server , it sends a message ( passing the task id in message ) to the ManagerAgent asking whether the taskid it is sending is in the current TaskIDs list or not . The ManagerAgent checks for the in coming taskid with the taskids ( that are stored in an arrya or vector) and send a results back .While checking for the existing taskids ,if it is not present it will append the new taskid to the current taskIds list and send the result back as a message as "NO" and if the task id exists reply message is "YES" . If the taskid exists( i.e for reply YES) the agent will get disposed. Else( i.e for reply NO ) the agent starts its processing and when it is finished its processing it will send a messsage ( REMOVE <taskID> ) to ManagerAgent to remove the taskID from its list. Then the ManagerAgent removes its task ID. Let me know if there is any other efficient way for achieving this. But Looks like messaging is not working with the current version of aglets. I am seeing mails from "AnilKumar" in AgletsUser and Aglets Developer archive list that aglets local and Remote messaging is not working at all.Will there be a solution soon to fix those problems.If so i will go ahead and try implement my ManagerAgent using messaging. Thankd for your help .. Thanks Phani --- Luca Ferrari <cat...@us...> wrote: > Phani Indhra's cat, on 11/10/2005 6.47, walking on > the keyboard wrote: > > Once the first aglet comes in i create a file > with the name "TASKIDS.txt " , if it is not already > created.And write the task ID to it in a line and > proceed doing the work for the task . > > If "TASKIDS.txt " is already created i read each > line in the file and compare it with the taskdID of > the just arrived aglet. ( Note : Comparision is > for as there can be multiple disict TaskIDs in this > file at a time ) . If taskID does not exist proceed > further with work .If it exists , > > the aglet gets disposed(); > > > > This is a possible solution, but I suggest you to > use a manager agent on > each system. In other words, exploit an agent as > interface to the > running tasks, thus incoming agents asks for running > tasks to it and > communicate to it when tasks are finished. In this > way, you can keep the > table in memory or, in future release, can use other > storing systems > (DBMS) without requiring any changes to the task > agents. > > Hope this helps, > Luca > > -- > +-------------------------------+ > Luca Ferrari > cat...@us... > > The Aglets Project: > http://aglets.sourceforge.net > +-------------------------------+ > > > ------------------------------------------------------- > This SF.Net email is sponsored by: > Power Architecture Resource Center: Free content, > downloads, discussions, > and more. > http://solutions.newsforge.com/ibmarch.tmpl > _______________________________________________ > Aglets-users mailing list > Agl...@li... > https://lists.sourceforge.net/lists/listinfo/aglets-users > __________________________________ Yahoo! Music Unlimited Access over 1 million songs. Try it free. http://music.yahoo.com/unlimited/ |
From: Anil K. <akr...@ya...> - 2005-10-16 06:28:10
|
Hi Luca and ALL , After setting the classpaths properly i run the following command at command prompt " java com.ibm.maf.rmi.MAFFInder_RMIImpl " and i got the follwoing message . ------------------------------------------- akvz2@r24intelsys lib]$ pwd /home/akvz2/java/aglets/lib [akvz2@r24intelsys lib]$ java com.ibm.maf.rmi.MAFFinder_RMIImpl MAFFinder bound in local registry name: MAFFinder port: 4435 ------------------------------------------- Now i tried for remote messaging between agletA and agletB .( A the bottom i pasted the code i used for agletA and agletB for remote messaging.) I got the following message at the thahithi console prompt ... ---------------------------------------------- $$$$$$$$$$ The new agent has ID =b526aec0c16aa03c ***** Addr: atp://131.151.8.211 place: No integrity check because no security domain is authenticated. remoteProxy is :AgletProxyImpl : RemoteAgletRef : null .. WeakRef[count=1] ---------------------------------------------- Strangely .. this time no exception is being thrown like earlier.Earlier i used to get com.ibm.aglet.NotHandledException . I guess the exception is not coming because of your new "com.ibm.aglets.FutureReplyImpl.java" file. But i have a doubt .. Is message is being sent or not at all ..? I tested this remote messaging code when MAFFinder is running on a different terminal on the same system where aglets thahithi is running AND when MAFFinder is not running .Both times i got the same out put as i shoed above. Please let me know what else i can do to make the remote messaging working .It is very crucial for my project to have remote and local messaging working. If i am not able to achieve this .. the purpose of using aglets for my project is defeated :-) . I will be in lot of touble : :-/ :( . Following is the agletA and agletB code i used for remote Messaging. -------------------------Remote Mesaing : agletA------ package old; import com.ibm.aglet.*; import java.net.*; public class agletA extends Aglet { public void run() { try { //Get the aglet context AgletContext context = this.getAgletContext(); //Create the agletB instance. AgletProxy toMove = context.createAglet(null, "old.agletB", null); //Save the new aglet ID AgletID remoteID = toMove.getAgletID(); System.out.println(" $$$$$$$$$$ The new agent has ID ="+remoteID); //Migrate the new agent String remoteContext = "atp://131.151.8.211:4434"; URL url = new URL(remoteContext); toMove.dispatch(url); //Get the remote Proxy AgletProxy remoteProxy = context.getAgletProxy(url,remoteID); try { System.out.println(" remoteProxy is :"+remoteProxy); //Send message to the remote agent remoteProxy.sendMessage(new Message("HELL")); } catch(Exception e) { System.out.println("Message is not sent .Exception is :"+e); e.printStackTrace(); } } catch(Exception e ) { System.out.println("Exception is :"+e); } } } ----------RemoteMessaging agletB-------------------- package old; import com.ibm.aglet.*; import java.net.*; public class agletB extends Aglet { public void run() { try { AgletID myID = this.getAgletID(); System.out.println(" In aglet B .myID is :"+myID); } catch (Exception e) { System.out.println("Exception is :"+e); } } //handle the message. public boolean handleMessgae(Message msg) { System.out.println(" Just entered in the handleMessgae () of agletB ."); if( msg.sameKind("HELL")) { System.out.println("I am aglet . HELLO message received from agletA. "); return true; } return false; } } Appreciate your help ... Thanks Anil --- Luca Ferrari <cat...@us...> wrote: Anil Kumar's cat, on 11/10/2005 21.11, walking on the keyboard wrote: >$$$$$$$$$$ The new agent has ID > =dbd9468f8f969b9e > > myID is :dbd9468f8f969b9e > > ***** Addr: atp://131.151.8.211 place: > > No integrity check because no security domain is > > authenticated. > > remoteProxy is :AgletProxyImpl : RemoteAgletRef : > > null .. WeakRef[count=1] > > Message is not sent .Exception is > > :com.ibm.aglet.NotHandledException: > > com.ibm.maf.NotHandled:null > > com.ibm.aglet.NotHandledException: > > com.ibm.maf.NotHandled:null > > at > > com.ibm.aglets.MessageBroker.sendMessage(Unknown > > Source) > Here the exception should be raised due to a problem with the MAF system. Have you tried running the MAFFINDER has I wrote you in my previous e-mail? Luca +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com |
From: Anil K. <akr...@ya...> - 2005-10-16 04:52:08
|
Hi Luca and ALL , As you suggesed i have taken the file com.ibm.aglets.FutureReplyImpl.java from sourceforge,net site and compiled it along withe the other source files i downloaded earlier( from aglets-2.0.2-src.jar) .I overrite this new FutureReplyImpl.java file with the existing one and compiled. I got a compilation error at one import line that syas "import com.ibm.aglet.message.MessageException; " . There is no com.ibm.aglet.message directory at all . So i just removed this "message" directory and used " com.ibm.aglet.MessageException; " and compilation was successful . (Note : you may need to correct this error and upload it again to CVS.) Then i created a new "aglets-2.0.2.jar" with the directories "com.xx.xx and org.xx.xx.xx " I used this new jar file "aglets-2.0.2.jar" while running the application to check for local Mesaging . Now i am not getting any exception like earlier ( Earlier i got com.ibm.aglet.NotHandledException ) , but on the agletB side (where message is being handled ) looks like .. handleMessage( ) is not being called at all. I am noy sure why it is behavving like that . I kept two SOP statements ( please look into the agletB code pasted in the bottom ) in the " public boolean handleMessgae(Message msg){ } " to check whether control is coming to that function or not at all ? Those two statements are not being printed at all. I guess handleMessage() will always be looking for in coming messages once the aglet is initiated. Do we have to explicitly call the handleMessage ()....? I even send around 4 messages thinking that it will give me some clue. But no clue at all. Please help me to know what is happening here. Is the new "com.ibm.aglets.FutureReplyImpl.java" you uploaded causing some other problem solving the cancel method problem...? Following is the out put on Thahithi console ... ------------------------OUTPUT-------------------------- $$$$$$$$$ The new agent ( aglet B) has ID =a330bf4ef9619d66 localProxy is :AgletProxyImpl : Aglet [active] ClassName [baglets.agletB] Identifier[a330bf4ef9619d66] Owner[CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us] CodeBase[atp://r24intelsys:4434/] CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us Sending a new message again I am aglet B : myID is :a330bf4ef9619d66 Sending a new message again Sending a new message again Sending a new message again Sending a new message again ------------------------OUTPUT------------------------- For your reference i am copying the agletB and agletA code here ... ------------------agletA-----------------------STARTS package baglets; import com.ibm.aglet.*; import java.net.*; public class agletA extends Aglet { public void run() { try { //Get the aglet context AgletContext context = this.getAgletContext(); //Create the agletB instance. AgletProxy localProxy = context.createAglet(null, "baglets.agletB", null); //Save the new aglet ID AgletID loacalID = localProxy.getAgletID(); System.out.println(" $$$$$$$$$$ The new agent ( aglet B) has ID ="+loacalID); try { System.out.println(" localProxy is :"+localProxy); //Send message to the remote agent for(int i=0 ;i<5;i++) { System.out.println(" Sending a new message again"); localProxy.sendMessage(new Message("HELL")); pause(); } } catch(Exception e) { System.out.println("Message is not sent .Exception is :"+e); e.printStackTrace(); } } catch(Exception e ) { System.out.println("Exception is :"+e); } } private static long SLEEP = 2000; private void pause() { try { Thread.sleep(SLEEP); } catch (InterruptedException ie) { } } } -----------------agletA-----------------------ENDS -----------------agletB-----------------------STARTS package baglets; import com.ibm.aglet.*; import java.net.*; public class agletB extends Aglet { public void run() { try { AgletID myID = this.getAgletID(); System.out.println(" I am aglet B : myID is :"+myID); } catch (Exception e) { System.out.println("Exception is :"+e); } } //handle the message. public boolean handleMessgae(Message msg) { System.out.println("I am aglet B . I am at the start of the handleMessgae() "); if( msg.sameKind("HELL")) { System.out.println("I am aglet B .HELLO message received from agletA."); return true; } return false; } } -----------------agletB-----------------------ENDS Please let me know what can i do to find the problem. This simple problem is eating lot of my time. Appreciate your help. Thanks Anil --- Luca Ferrari <cat...@us...> wrote: > Anil Kumar's cat, on 11/10/2005 21.11, walking on > the keyboard wrote: > > Stack trace with local proxy .... Local messaging > . > > ------STARTS > > > > $$$$$$$$$$ The new agent has ID > =e308f78be33d8ad4 > > localProxy is :AgletProxyImpl : Aglet [active] > > ClassName [baglets.agletB] > > Identifier[e308f78be33d8ad4] > > Owner[CN=anilkumar, OU=erl, O=umr, L=rolla, > > ST=mo, C=us] > > CodeBase[atp://r24intelsys:4434/] > > CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us > > myID is :e308f78be33d8ad4 > > Message is not sent .Exception is > > :com.ibm.aglet.NotHandledException: [Message : > kind = > > HELLO: arg = {}: priority = 5] > > com.ibm.aglet.NotHandledException: [Message : kind > = > > HELLO: arg = {}: priority = 5] > > at > > com.ibm.aglets.FutureReplyImpl.cancel(Unknown > Source) > I've uploaded a versione of FutureReplyImpl a few days ago that should avoid this problem, since the cancel method is quite rude and raises often the exception. I'm still investigating on the "why" of such implementation. Luca +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ __________________________________ Yahoo! Music Unlimited Access over 1 million songs. Try it free. http://music.yahoo.com/unlimited/ |
From: Anil K. <akr...@ya...> - 2005-10-11 19:12:12
|
Hi Luca and ALL , Is aglet messaging not working earlier also ( i mean in earlier versions ) ..? Since aglet messaging is the main thing ,if it does not work i will be into lot of problems. Can you guys ( other developers /users ) are communicating with aglets ..? I tried printing the print stack trace in both cases( local messaging and remote messaging ) . Please let me know what is wrong. Stack trace with local proxy .... Local messaging . ------STARTS $$$$$$$$$$ The new agent has ID =e308f78be33d8ad4 localProxy is :AgletProxyImpl : Aglet [active] ClassName [baglets.agletB] Identifier[e308f78be33d8ad4] Owner[CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us] CodeBase[atp://r24intelsys:4434/] CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us myID is :e308f78be33d8ad4 Message is not sent .Exception is :com.ibm.aglet.NotHandledException: [Message : kind = HELLO: arg = {}: priority = 5] com.ibm.aglet.NotHandledException: [Message : kind = HELLO: arg = {}: priority = 5] at com.ibm.aglets.FutureReplyImpl.cancel(Unknown Source) at com.ibm.aglets.MessageImpl.handle(Unknown Source) at com.ibm.aglets.AgletThread.run(Unknown Source) Stack trace with local proxy .... Local messaging . ------ENDS Stack trace with Remote proxy .... remote messaging .-STARTS $$$$$$$$$$ The new agent has ID =dbd9468f8f969b9e myID is :dbd9468f8f969b9e ***** Addr: atp://131.151.8.211 place: No integrity check because no security domain is authenticated. remoteProxy is :AgletProxyImpl : RemoteAgletRef : null .. WeakRef[count=1] Message is not sent .Exception is :com.ibm.aglet.NotHandledException: com.ibm.maf.NotHandled:null com.ibm.aglet.NotHandledException: com.ibm.maf.NotHandled:null at com.ibm.aglets.MessageBroker.sendMessage(Unknown Source) at com.ibm.aglets.RemoteAgletRef.sendMessage(Unknown Source) at com.ibm.aglets.AgletProxyImpl.sendMessage(Unknown Source) at old.agletA.run(agletA.java:33) at com.ibm.aglets.SystemMessage.handle(Unknown Source) at com.ibm.aglets.AgletThread.run(Unknown Source) Stack trace with Remote proxy .... remote messaging .-ENDS For your easy reference i am copying the files that i used to produce the stack trace. /////////////////////// files used for remote messaging///////////////////////////////////////// package old; import com.ibm.aglet.*; import java.net.*; public class agletA extends Aglet { public void run() { try { //Get the aglet context AgletContext context = this.getAgletContext(); //Create the agletB instance. AgletProxy toMove = context.createAglet(null, "old.agletB", null); //Save the new aglet ID AgletID remoteID = toMove.getAgletID(); System.out.println(" $$$$$$$$$$ The new agent has ID ="+remoteID); //Migrate the new agent String remoteContext = "atp://131.151.8.211:4434"; URL url = new URL(remoteContext); toMove.dispatch(url); //Get the remote Proxy AgletProxy remoteProxy = context.getAgletProxy(url,remoteID); try { System.out.println(" remoteProxy is :"+remoteProxy); //Send message to the remote agent remoteProxy.sendMessage(new Message("HELLO")); } catch(Exception e) { System.out.println("Message is not sent .Exception is :"+e); } } catch(Exception e ) { System.out.println("Exception is :"+e); } } } package old; import com.ibm.aglet.*; import java.net.*; public class agletB extends Aglet { public void run() { try { AgletID myID = this.getAgletID(); System.out.println(" myID is :"+myID); } catch (Exception e) { System.out.println("Exception is :"+e); } } //handle the message. public boolean handleMessgae(Message msg) { if( msg.sameKind("HELLO")) { System.out.println("I am aglet . HELLO message received from agletA. "); return true; } return false; } } Error with Remote messaging . $$$$$$$$$$ The new agent has ID =dbd9468f8f969b9e myID is :dbd9468f8f969b9e ***** Addr: atp://131.151.8.211 place: No integrity check because no security domain is authenticated. remoteProxy is :AgletProxyImpl : RemoteAgletRef : null .. WeakRef[count=1] Message is not sent .Exception is :com.ibm.aglet.NotHandledException: com.ibm.maf.NotHandled:null com.ibm.aglet.NotHandledException: com.ibm.maf.NotHandled:null at com.ibm.aglets.MessageBroker.sendMessage(Unknown Source) at com.ibm.aglets.RemoteAgletRef.sendMessage(Unknown Source) at com.ibm.aglets.AgletProxyImpl.sendMessage(Unknown Source) at old.agletA.run(agletA.java:33) at com.ibm.aglets.SystemMessage.handle(Unknown Source) at com.ibm.aglets.AgletThread.run(Unknown Source) /////////////////////// files used for LOCAL messaging ///////////////////////////////////////// NOte : "agletB.java" file is the same as above. package old; import com.ibm.aglet.*; import java.net.*; public class agletA extends Aglet { public void run() { try { //Get the aglet context AgletContext context = this.getAgletContext(); //Create the agletB instance. AgletProxy toMove = context.createAglet(null, "old.agletB", null); //Save the new aglet ID AgletID loacalID = toMove.getAgletID(); System.out.println(" $$$$$$$$$$ The new agent has ID ="+loacalID); //Get the Local Proxy AgletProxy loacalProxy = context.getAgletProxy(loacalID); try { System.out.println(" localProxy is :"+loacalProxy); //Send message to the remote agent loacalProxy.sendMessage(new Message("HELLO")); } catch(Exception e) { System.out.println("Message is not sent .Exception is :"+e); } } catch(Exception e ) { System.out.println("Exception is :"+e); } } } Error with local messaging . $$$$$$$$$$ The new agent has ID =e308f78be33d8ad4 localProxy is :AgletProxyImpl : Aglet [active] ClassName [baglets.agletB] Identifier[e308f78be33d8ad4] Owner[CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us] CodeBase[atp://r24intelsys:4434/] CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us myID is :e308f78be33d8ad4 Message is not sent .Exception is :com.ibm.aglet.NotHandledException: [Message : kind = HELLO: arg = {}: priority = 5] com.ibm.aglet.NotHandledException: [Message : kind = HELLO: arg = {}: priority = 5] at com.ibm.aglets.FutureReplyImpl.cancel(Unknown Source) at com.ibm.aglets.MessageImpl.handle(Unknown Source) at com.ibm.aglets.AgletThread.run(Unknown Source) Plase let me know what is wrong ...? Thanks Anil --- Luca Ferrari <cat...@us...> wrote: > Anil Kumar's cat, on 11/10/2005 1.14, walking on the > keyboard wrote: > > Message is not sent .Exception is > > :com.ibm.aglet.NotHandledException: [Message : > kind = > > HELLO: arg = {}: priority = 5] > > > I suspect the problem is in the > FutureReplyImpl.getReply method, but to > be sure I'd like to see the stacktrace. It would be > helpful if you > kindly add to your catch clauses a printStackTrace() > instruction, and > send me back the backtrace. > > Thanks, > Luca > > -- > +-------------------------------+ > Luca Ferrari > cat...@us... > > The Aglets Project: > http://aglets.sourceforge.net > +-------------------------------+ > __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com |
From: Phani I. <pha...@ya...> - 2005-10-11 04:51:23
|
Hi Luca and all , I am facing problem on one another aspect while using aglets ... Is there any way that we can store some temporary information in a centralized place in aglets plat form , where all the incoming aglets can access this temporay information and proceed further or get disposed based on the temporary data . In detail th problem is like this ... I am working on a distributed computing application. In that aglets will be sent to multiple systems to perform a task. And there is a chance that more than one aglet will be going to a single system for doing the SAME task .So when the first aglet arrives , if it can write the task id ( which is available with each aglet that comes in ) to some place or store in some way , all the newly arriving aglets for doing the same task ,can check the taskID and get them self disposed, if the taskid is same with the taskID they are comparing. Right now i am using the following raw technique whiche is not efficient at all. Once the first aglet comes in i create a file with the name "TASKIDS.txt " , if it is not already created.And write the task ID to it in a line and proceed doing the work for the task . If "TASKIDS.txt " is already created i read each line in the file and compare it with the taskdID of the just arrived aglet. ( Note : Comparision is for as there can be multiple disict TaskIDs in this file at a time ) . If taskID does not exist proceed further with work .If it exists , the aglet gets disposed(); When the aglet that first arived finished the work , i delete the respective taskID from the file and make that aglet dispose. Since this technique involes disk access , it is slower and not efficient . I did not find any othe eficient way to store temporary info which can be accessed by all the aglets in a proxy.I am sure there will be better ways to implement this. As developpers of Aglets platform , you will have better techniques to do this kind of jobs. Please let me know at least one of them .Appreciate your help on this. Thanks Phani. --------------------------------- Yahoo! Music Unlimited - Access over 1 million songs. Try it free. |
From: Phani I. <pha...@ya...> - 2005-10-11 04:10:29
|
Hi Luca and All , I am reletively new to Aglets development. I need some advice and help . I kind of played around with aglets. Now i have to ge the following done . I have a JAVA awt UI that has two textboxes and a Submit button on it . I take input ( two integer values ) from user through the texboxes and when user clicks on the Submit button i need to create an aglet (agent) passing the input info as object to createAglet() method and send the agent to Thahithi server . Once the aglet reaches tahithi server , i can utilise the aglet techniques of aglets messaging ,and creating another aglets ,and dispatching them to neceaary systems to get the actual application work done. So my basic problem here is , i need to take input from a stand alone java program and pass it through an agent in Tahithi server. I assume Tahithi will be running on the sytstem where my stand alone program is running with it UI open for user for input. Please let me know the techniques or ways to achieve this . In Servlets and JSPs we use HTTP s GET or POST to send the user input to the Application Servers. What is the similar thing in Aglets. Please help me in getting this done. Thanks Phani --------------------------------- Yahoo! Music Unlimited - Access over 1 million songs. Try it free. |
From: Anil K. <akr...@ya...> - 2005-10-10 23:14:32
|
Hi Luca , While doing remote messaging i used " AgletProxy remoteProxy = context.getAgletProxy(url,remoteID); " and got the null as the return value for remoteProxy . So message was not sent and cause you said is "the MAFFinder is not running". But When i used local mesaging i got the value properly for the local proxy as printed below. But , can you please let meknow why i am not able send a message ..? In this case also exception is being thrown is becuase of "the MAFFinder is not running"...? Hope you will let me know the reason . For your reference ..following is the exception thrown while doing local messaging. Error with local messaging ..................................STARTS $$$$$$$$$$ The new agent has ID =3f9f1be5e4cd0e7e localProxy is :AgletProxyImpl : Aglet [active] ClassName [old.agletB] Identifier[3f9f1be5e4cd0e7e] Owner[CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us] CodeBase[atp://r24intelsys:4434/] CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us myID is :3f9f1be5e4cd0e7e Message is not sent .Exception is :com.ibm.aglet.NotHandledException: [Message : kind = HELLO: arg = {}: priority = 5] Error with local messaging ..................................ENDS Thanks for your help . Anil --- Luca Ferrari <flu...@ka...> wrote: > > > -------- Original Message -------- > Subject: Re: [Aglets-developer] Remote messaging and > .. even local > messaging between throwing erros.....Any advises > Date: Mon, 10 Oct 2005 12:14:14 +0200 > From: Luca Ferrari <cat...@us...> > Reply-To: cat...@us... > To: Anil Kumar <akr...@ya...> > References: > <200...@we...> > > Anil Kumar's cat, on 10/10/2005 6.38, walking on the > keyboard wrote: > > > com.ibm.aglet.NotHandledException:com.ibm.maf.NotHandled:null > > > > Here i found that the function " > > context.getAgletProxy(url,remoteID) " is > returning a > > null. > > I am not sure why is this ..?Any guess or ideas > ..? > > ( I am able to dispatch and retract agents between > > remote an local Tahithi servers) > > > > The exception raises from the > MessageBroker.sendMessage method. The > getProxy returns null, I guess, cause the MAFFinder > is not running: > > public AgletProxy getAgletProxy(AgletID aid) { > AgletProxy p = (AgletProxy)_agletProxies.get(aid); > > if (p != null) { > return p; > } > try { > MAFFinder finder = > > MAFAgentSystem.getLocalMAFAgentSystem().get_MAFFinder(); > > if (finder != null) { > String[] locations = > finder.lookup_agent(MAFUtil.toName(aid, null), > null); > > p = getAgletProxy(new URL(locations[0]), aid); > } > } catch (EntryNotFound ex) { > p = null; > } catch (MalformedURLException ex) { > ex.printStackTrace(); > p = null; > } catch (FinderNotFound ex) { > ex.printStackTrace(); > p = null; > } catch (Exception ex) { > ex.printStackTrace(); > p = null; > } > return p; > } > > > if the maffinder is not found than no proxy is > returned. Try starting > the MAFFinder running: java > com.ibm.maf.rmi.MAFFInder_RMIImpl > and tell us what changes. > > Hope this helps, > Luca > > > -- > +-------------------------------+ > Luca Ferrari > cat...@us... > > The Aglets Project: > http://aglets.sourceforge.net > +-------------------------------+ > > > -- > Luca Ferrari > flu...@ka... > > > ------------------------------------------------------- > This SF.Net email is sponsored by: > Power Architecture Resource Center: Free content, > downloads, discussions, > and more. > http://solutions.newsforge.com/ibmarch.tmpl > _______________________________________________ > Aglets-developer mailing list > Agl...@li... > https://lists.sourceforge.net/lists/listinfo/aglets-developer > __________________________________ Yahoo! Music Unlimited Access over 1 million songs. Try it free. http://music.yahoo.com/unlimited/ |
From: Anil K. <akr...@ya...> - 2005-10-10 19:04:46
|
Hi Luca , The exception " com.ibm.aglet.NotHandledException:com.ibm.maf.NotHandled:null " was coming when i called the method with two parameters : context.getAgletProxy(url,remoteID) . But you are mentioning a method with single parameter : public AgletProxy getAgletProxy(AgletID aid) and you are saying that the cause is " the MAFFinder is not running:" Are you refering to remote messaging ..? or Local mesaaging within the same proxy ..? In my previous mail i mentioned errors that i am getting in both cases ( remote and local messaging). I am confused with your following sentences.. >if the maffinder is not found than no proxy is returned. Try starting >the MAFFinder running: java com.ibm.maf.rmi.MAFFInder_RMIImpl >and tell us what changes. By writing the above sentences ,are you asking me to run the "java com.ibm.maf.rmi.MAFFInder_RMIImpl" at command prompt ..? I assuemd "YES" to my above question and went ahead and tried running "java com.ibm.maf.rmi.MAFFInder_RMIImpl" at command prompt . I havse seen the file com/ibm/maf/rmi/MAFFInder_RMIImpl in the java/aglets/lib/aglets-2.0.2.jar file and so i moved to the directory java/aglets/lib and run the command " java com.ibm.maf.rmi.MAFFInder_RMIImpl " BUt got the following error .. [akvz2@r24intelsys lib]$ java com.ibm.maf.rmi.MAFFInder_RMIImpl Exception in thread "main" java.lang.NoClassDefFoundError: com/ibm/maf/rmi/MAFFInder_RMIImpl I thought i have to extrat class files and extracted them to /java/aglets/lib directory ( where /java/aglets/ is my AGLETS_HOME directory ) ( After extracting the files from java/aglets/lib/aglets-2.0.2.jar file , I removed aglets-2.0.2.jar thinking java compiler tries to find the same file in two locations and may raise a classpath error.) I moved to /java/aglets/lib and tried running " java com.ibm.maf.rmi.MAFFInder_RMIImpl " again But got the same following error .. [akvz2@r24intelsys lib]$ java com.ibm.maf.rmi.MAFFInder_RMIImpl Exception in thread "main" java.lang.NoClassDefFoundError: com/ibm/maf/rmi/MAFFInder_RMIImpl Following are my environment variables .... [akvz2@r24intelsys lib]$ echo $CLASSPATH .:/home/akvz2/java/aglets/public:/home/akvz2/java/aglets/lib:/home/akvz2/java/jdk1.5.0_04/bin: [akvz2@r24intelsys lib]$ echo $JAVA_HOME /home/akvz2/java/jdk1.5.0_04 [akvz2@r24intelsys lib]$ echo $AGLETS_HOME /home/akvz2/java/aglets [akvz2@r24intelsys lib]$ echo $PATH /home/akvz2/java/jdk1.5.0_04/bin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/akvz2/bin:/home/akvz2/java/aglets/bin Why i am not able to run the MAFFInder_RMIImpl file from command prompt ..? Is this what you asked me to do ..? Please let me know , if i understood your stamement wrong. Thanks Anil --- Luca Ferrari <flu...@ka...> wrote: > > > -------- Original Message -------- > Subject: Re: [Aglets-developer] Remote messaging and > .. even local > messaging between throwing erros.....Any advises > Date: Mon, 10 Oct 2005 12:14:14 +0200 > From: Luca Ferrari <cat...@us...> > Reply-To: cat...@us... > To: Anil Kumar <akr...@ya...> > References: > <200...@we...> > > Anil Kumar's cat, on 10/10/2005 6.38, walking on the > keyboard wrote: > > > com.ibm.aglet.NotHandledException:com.ibm.maf.NotHandled:null > > > > Here i found that the function " > > context.getAgletProxy(url,remoteID) " is > returning a > > null. > > I am not sure why is this ..?Any guess or ideas > ..? > > ( I am able to dispatch and retract agents between > > remote an local Tahithi servers) > > > > The exception raises from the > MessageBroker.sendMessage method. The > getProxy returns null, I guess, cause the MAFFinder > is not running: > > public AgletProxy getAgletProxy(AgletID aid) { > AgletProxy p = (AgletProxy)_agletProxies.get(aid); > > if (p != null) { > return p; > } > try { > MAFFinder finder = > > MAFAgentSystem.getLocalMAFAgentSystem().get_MAFFinder(); > > if (finder != null) { > String[] locations = > finder.lookup_agent(MAFUtil.toName(aid, null), > null); > > p = getAgletProxy(new URL(locations[0]), aid); > } > } catch (EntryNotFound ex) { > p = null; > } catch (MalformedURLException ex) { > ex.printStackTrace(); > p = null; > } catch (FinderNotFound ex) { > ex.printStackTrace(); > p = null; > } catch (Exception ex) { > ex.printStackTrace(); > p = null; > } > return p; > } > > > if the maffinder is not found than no proxy is > returned. Try starting > the MAFFinder running: java > com.ibm.maf.rmi.MAFFInder_RMIImpl > and tell us what changes. > > Hope this helps, > Luca > > > -- > +-------------------------------+ > Luca Ferrari > cat...@us... > > The Aglets Project: > http://aglets.sourceforge.net > +-------------------------------+ > > > -- > Luca Ferrari > flu...@ka... > > > ------------------------------------------------------- > This SF.Net email is sponsored by: > Power Architecture Resource Center: Free content, > downloads, discussions, > and more. > http://solutions.newsforge.com/ibmarch.tmpl > _______________________________________________ > Aglets-developer mailing list > Agl...@li... > https://lists.sourceforge.net/lists/listinfo/aglets-developer > __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com |
From: Luca F. <flu...@ka...> - 2005-10-10 10:37:18
|
-------- Original Message -------- Subject: Re: [Aglets-developer] Remote messaging and .. even local messaging between throwing erros.....Any advises Date: Mon, 10 Oct 2005 12:14:14 +0200 From: Luca Ferrari <cat...@us...> Reply-To: cat...@us... To: Anil Kumar <akr...@ya...> References: <200...@we...> Anil Kumar's cat, on 10/10/2005 6.38, walking on the keyboard wrote: > com.ibm.aglet.NotHandledException:com.ibm.maf.NotHandled:null > > Here i found that the function " > context.getAgletProxy(url,remoteID) " is returning a > null. > I am not sure why is this ..?Any guess or ideas ..? > ( I am able to dispatch and retract agents between > remote an local Tahithi servers) > The exception raises from the MessageBroker.sendMessage method. The getProxy returns null, I guess, cause the MAFFinder is not running: public AgletProxy getAgletProxy(AgletID aid) { AgletProxy p = (AgletProxy)_agletProxies.get(aid); if (p != null) { return p; } try { MAFFinder finder = MAFAgentSystem.getLocalMAFAgentSystem().get_MAFFinder(); if (finder != null) { String[] locations = finder.lookup_agent(MAFUtil.toName(aid, null), null); p = getAgletProxy(new URL(locations[0]), aid); } } catch (EntryNotFound ex) { p = null; } catch (MalformedURLException ex) { ex.printStackTrace(); p = null; } catch (FinderNotFound ex) { ex.printStackTrace(); p = null; } catch (Exception ex) { ex.printStackTrace(); p = null; } return p; } if the maffinder is not found than no proxy is returned. Try starting the MAFFinder running: java com.ibm.maf.rmi.MAFFInder_RMIImpl and tell us what changes. Hope this helps, Luca -- +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ -- Luca Ferrari flu...@ka... |
From: Anil K. <akr...@ya...> - 2005-10-10 04:38:17
|
Hi Luca and others , OS : FedoraCore Linux 3 I am facing problem while sending messages between agents. First i tried sending the message to the remote agent. Then i got the error as follows ... com.ibm.aglet.NotHandledException:com.ibm.maf.NotHandled:null Here i found that the function " context.getAgletProxy(url,remoteID) " is returning a null. I am not sure why is this ..?Any guess or ideas ..? ( I am able to dispatch and retract agents between remote an local Tahithi servers) Then i tried sending a message between two agents in the same proxy and context . But i got the following error : com.ibm.aglet.NotHandledException: [Message : kind = HELLO: arg = {}: priority = 5] I used the sample aglets ( namely agletA and agletB which were given in the aglets user manual )so that it will be easy to find out the problem. I provided clear error messages.I am not finding any thing from the error mesaages. Error with remote messaging..................................STARTS $$$$$$$$$$ The new agent has ID =7425fd41735d233a ***** Addr: atp://131.151.8.211 place: No integrity check because no security domain is authenticated. remoteProxy is :AgletProxyImpl : RemoteAgletRef : null .. WeakRef[count=1] Message is not sent .Exception is :com.ibm.aglet.NotHandledException: com.ibm.maf.NotHandled:null Error with remote messaging.................................. ENDS Error with local messaging ..................................STARTS $$$$$$$$$$ The new agent has ID =3f9f1be5e4cd0e7e localProxy is :AgletProxyImpl : Aglet [active] ClassName [old.agletB] Identifier[3f9f1be5e4cd0e7e] Owner[CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us] CodeBase[atp://r24intelsys:4434/] CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us myID is :3f9f1be5e4cd0e7e Message is not sent .Exception is :com.ibm.aglet.NotHandledException: [Message : kind = HELLO: arg = {}: priority = 5] Error with local messaging ..................................ENDS As you are the project lead ..i am sure you will find some identification for errors .Please lete me know why messages are not being transferred. Please see the following source files i am using in both remote mesaging and local messaging cases and let me know what is wrong...? Is my Message class object creation wrong ..? Thanks Anil /////////////////////// files used for remote messaging///////////////////////////////////////// package old; import com.ibm.aglet.*; import java.net.*; public class agletA extends Aglet { public void run() { try { //Get the aglet context AgletContext context = this.getAgletContext(); //Create the agletB instance. AgletProxy toMove = context.createAglet(null, "old.agletB", null); //Save the new aglet ID AgletID remoteID = toMove.getAgletID(); System.out.println(" $$$$$$$$$$ The new agent has ID ="+remoteID); //Migrate the new agent String remoteContext = "atp://131.151.8.211:4434"; URL url = new URL(remoteContext); toMove.dispatch(url); //Get the remote Proxy AgletProxy remoteProxy = context.getAgletProxy(url,remoteID); try { System.out.println(" remoteProxy is :"+remoteProxy); //Send message to the remote agent remoteProxy.sendMessage(new Message("HELLO")); } catch(Exception e) { System.out.println("Message is not sent .Exception is :"+e); } } catch(Exception e ) { System.out.println("Exception is :"+e); } } } package old; import com.ibm.aglet.*; import java.net.*; public class agletB extends Aglet { public void run() { try { AgletID myID = this.getAgletID(); System.out.println(" myID is :"+myID); } catch (Exception e) { System.out.println("Exception is :"+e); } } //handle the message. public boolean handleMessgae(Message msg) { if( msg.sameKind("HELLO")) { System.out.println("I am aglet . HELLO message received from agletA. "); return true; } return false; } } Error with remote messaging.................................. $$$$$$$$$$ The new agent has ID =7425fd41735d233a ***** Addr: atp://131.151.8.211 place: No integrity check because no security domain is authenticated. remoteProxy is :AgletProxyImpl : RemoteAgletRef : null .. WeakRef[count=1] Message is not sent .Exception is :com.ibm.aglet.NotHandledException: com.ibm.maf.NotHandled:null /////////////////////// files used for LOCAL messaging ///////////////////////////////////////// NOte : "agletB.java" file is the same as above. package old; import com.ibm.aglet.*; import java.net.*; public class agletA extends Aglet { public void run() { try { //Get the aglet context AgletContext context = this.getAgletContext(); //Create the agletB instance. AgletProxy toMove = context.createAglet(null, "old.agletB", null); //Save the new aglet ID AgletID loacalID = toMove.getAgletID(); System.out.println(" $$$$$$$$$$ The new agent has ID ="+loacalID); //Get the Local Proxy AgletProxy loacalProxy = context.getAgletProxy(loacalID); try { System.out.println(" localProxy is :"+loacalProxy); //Send message to the remote agent loacalProxy.sendMessage(new Message("HELLO")); } catch(Exception e) { System.out.println("Message is not sent .Exception is :"+e); } } catch(Exception e ) { System.out.println("Exception is :"+e); } } } Error with local messaging . $$$$$$$$$$ The new agent has ID =3f9f1be5e4cd0e7e localProxy is :AgletProxyImpl : Aglet [active] ClassName [old.agletB] Identifier[3f9f1be5e4cd0e7e] Owner[CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us] CodeBase[atp://r24intelsys:4434/] CN=anilkumar, OU=erl, O=umr, L=rolla, ST=mo, C=us myID is :3f9f1be5e4cd0e7e Message is not sent .Exception is :com.ibm.aglet.NotHandledException: [Message : kind = HELLO: arg = {}: priority = 5] Plase let me know what is wrong ...? Thanks Anil __________________________________ Yahoo! Music Unlimited Access over 1 million songs. Try it free. http://music.yahoo.com/unlimited/ |
From: Luca F. <cat...@us...> - 2005-10-07 16:19:52
|
Hi, I've just posted a few changes to the CVS in order to support the sleep(..) operation over an agent. In other words, being in an aglet code is now possible to call the special method sleep(long timeout) to suspend an agent for the specified timeout. The sleep operation has been implemented as follows: the message manager is suspended, that means it continues enqueing incoming messages but it does not process them; then the current thread is set to sleep and, when the sleep ends, the message manager wakes up. Once the message manager wakes up, other came messages are processed. This means that, while an agent is sleeping, no messages are processed, and this is right accordingly to the sleep semantic. However, this also means that the thread in charge of delivering the message, e.g., another agent, waits until the agent wakes up. This can be a problem, since a sending agent has no idea of how many seconds the receiver agent will sleep. To overtake this limitation (and here I need your opinion guys), I created a special thead, the com.ibm.aglets.thread.DeliveryMessageThread, that is a thread in charge of delivering a message. Thus, this glue thread, simply takes care of the message, waiting until the addresse agent wakes up, and then it delivers the message. Of course, the deliver is now asynchronous and the sender agent/thread can continue with its work. If the reply is required, the sender must use the future reply facility, because the delivery thread does not provide any mechanism to control it. What do you think? Luca -- +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ |
From: Luca F. <cat...@us...> - 2005-10-05 10:47:19
|
Hi, I've just uploaded the new schema for the thread management. A new package, com.ibm.aglets.thread, has been added. This package contains the pool in charge of the management of the thread schema, that now exploits a single thread for several agents. An example about the exploitation of thread is provided, see the example.thread package. Luca -- +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ |
From: Luca F. <cat...@us...> - 2005-10-05 10:39:17
|
-------- Original Message -------- Subject: [Aglets-users] new implementation of the itinerary classes Date: Wed, 05 Oct 2005 12:32:36 +0200 From: Luca Ferrari <cat...@us...> Reply-To: agl...@li... To: agl...@li..., agl...@li... Hi, this morning I've uploaded on the CVS a new package, net.sourceforge.aglets.itinerary, that contains a new implementation of the itinerary classes. Not all the classes of the agletx package are yet provided, but a base implementation of simple, task and circular itinerary are ready. You can use them to create your own implementations. The reason for this re-implementation is that the agletx package is provided without sources, thus it is not possible to modify them. This e-mail briefly explain the implementation, please see the javadoc documentation for more details. The package net.sourceforge.aglets.itinerary contains a few interfaces for the definition of an itinerary, a so called TaskItinerary and a CircularItinerary. While Itinerary and CircularItinerary are quite trivial, the TaskItinerary requires more details. The idea is to provide a Task object, with an execute method that will be called at the right moment in order to execute the task. Then, it is possible to associate a task to an itinerary and to specify an execution policy for that task. The execution policy can be default (i.e., the task must be executed always, indipendently of the itinerary status), execute_on_dispacth (i.e., execute the task before the agent leaves the current host), execute_on_arrival (i.e., execute when the agent arrives on the next host), execute_on_revertering (i.e., when the agent is called back). It is possible to associate more tasks to the same itinerary and to the same destination within the same itinerary. The subpackage helpers (net.sourceforge.aglets.itinerary.helpers) contains concrete implementations of the interfaces provided by the above package. You can use the BaseXXXX classes as concrete implementation of itinerary and as base for your own implementations. Luca -- +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ ------------------------------------------------------- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl _______________________________________________ Aglets-users mailing list Agl...@li... https://lists.sourceforge.net/lists/listinfo/aglets-users -- No virus found in this incoming message. Checked by AVG Anti-Virus. Version: 7.0.344 / Virus Database: 267.11.9/116 - Release Date: 30/09/2005 -- +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ |
From: x r. <xr...@ho...> - 2005-09-24 01:55:33
|
H,dear friends: The version of my Aglets is 2.0.2,and my OS is Windows 2003. I am a newer to Aglets,and I am developing some applications based on Aglets,and meet with some questions.There are three questions related security and policy.I am in need of your help,please help me,thanks very much! ############################### ONE ###################################################### One is this: I have not deployed domain name items,so when i start the Tahiti,on the dos console,some information just like the below appears : ************************************************************************************************************************ [Warning: The hostname seems not having domain name. Please try -resolve option to resolve the fully qualified hostname or use -domain option to manually specify the domain name.] ************************************************************************************************************************ Directions:I have not deployed DNS,and i have tested some examples given by the System,and there are no any questions,and execute properly.Sometimes I tested on the same host,sometimes on different hosts,and all situations are in good condition.But i want to know how important the domain name is, and is it necessary for me to deploy it?is it important for the domain name to some projects about file-transmission and file-access between different hosts?Please give some advices,thanks! ###################################### TWO ################################################## Two is this: i tested the example provied by the Aglets,lying in the $aglet_home$\public\examples\patterns\Watcher.class,on the same host.I fill in the corresponding information,and click the "send"button,and some exceptions appear on the console screen.The exception information is as follows: ************************************************************************************************************************ java.lang.Exception: atp://xru:2000/:<java.security.AccessControlException::access denied (java.io.FilePermission f:\1.txt read)>; DURING initializeCheck at com.ibm.agletx.patterns.Notifier.observeInit(Notifier.java:186) at com.ibm.agletx.patterns.Notifier.start(Notifier.java:270) at com.ibm.agletx.patterns.Notifier.handleMessage(Notifier.java:154) at com.ibm.aglets.MessageImpl.handle(Unknown Source) at com.ibm.aglets.AgletThread.run(Unknown Source) ***** Addr: atp://xru/ place: No integrity check because no security domain is authenticated. ************************************************************************************************************************ Directions:From the exception information,i think the problem must has something to do with the security and permission of this system.But i want to know how i should configure the related security profiles of Aglets,and how i deal with this problem.Is it necessary for me to modify the source code or the example alget itself?is this problem related with the policy file?If so,how can i modify the policy file?Please help me,SOS!thanx!!! #################################### THREE ################################################# Three is this: I develop an file-searching application based on Aglets.When i tested this program as the normal java program,it runs properly.when i encapsules it into an aglet,and put it to the corresponding directory.On the Tahiti,i create this aglet,and on the dos console,there appears some exception information,which is this(this program is used to seach a file,which lies in the path of "f:\temp1\he.txt"): ************************************************************************************************************************ java.security.AccessControlException: access denied (java.io.FilePermission f:\temp1\he.txt read) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:269) at java.security.AccessController.checkPermission(AccessController.java:401) at java.lang.SecurityManager.checkPermission(SecurityManager.java:524) at com.ibm.aglets.tahiti.AgletsSecurityManager.checkPermission(Unknown Source) at java.lang.SecurityManager.checkRead(SecurityManager.java:863) at java.io.File.isFile(File.java:723) at examples.hjl_testbed.test0.run(test0.java:1987) at com.ibm.aglets.SystemMessage.handle(Unknown Source) at com.ibm.aglets.AgletThread.run(Unknown Source) ************************************************************************************************************************ Directions:Obviously,the problem is somewhat like the second one.It is relate to the security and permission of Aglets itself.How can i solve it?By the way, is the permission and security something to do with the OS platform,other than the Aglets platform?please give some some suggestions, I am waiting for you,thanks a lots!!! ##################################################################################### My email address is xr...@ho...,thanks very much!!! _________________________________________________________________ 与联机的朋友进行交流,请使用 MSN Messenger: http://messenger.msn.com/cn |
From: Luca F. <flu...@ka...> - 2005-09-07 10:22:27
|
-------- Original Message -------- Subject: Re: [Aglets-developer] Some peculiar problem on Aglet development .Please help Date: Wed, 07 Sep 2005 11:31:26 +0200 From: Luca Ferrari <cat...@us...> Reply-To: cat...@us... To: Anil Kumar <akr...@ya...> References: <200...@we...> Anil Kumar's cat, on 05/09/2005 22.59, walking on the keyboard wrote: > > I am working on a project that uses aglets but i am > very much new to aglets. I am facing some problem > which took 14 days of my time to solve. > I posted this to aglets users list but nobody replied > .I guess this is a peculiar problem so posting to > developpers list hoping for some hint to solve. > I am in need of your help. Please help me. It's strange, since permissions seem right. Are you sure these are the files your system is using? Have you tried to set up (or at least view) permissions from the graphical interface? Luca -- +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ -- Luca Ferrari flu...@ka... |
From: Luca F. <flu...@ka...> - 2005-09-07 10:22:10
|
-------- Original Message -------- Subject: Re: [Aglets-developer] help! Date: Wed, 07 Sep 2005 12:21:20 +0200 From: Luca Ferrari <cat...@us...> Reply-To: cat...@us... To: roushanak safavi <rou...@ya...> CC: agl...@li... References: <200...@we...> roushanak safavi's cat, on 26/08/2005 10.32, walking on the keyboard wrote: > Hi > I want to write a mobile agent which collects information about OS and the system.I want to know weather any similar projects has been done befor or not?? > and I have a problem: I want to know that can I call windows APIs in java or not?? > I apriciate any help. To collect information about the OS you can use the properties provided at the time of the JVM launch, but these are quite raw and basic information. You can call windows api from a java program loading the dll as static and then executing the code, but your code must be native, that means not mobile and not portable. I suggest you to split the application into two parts: a mobile one, realized thru aglets, and a fixed part, realized thru a module (corba, RMI, whatever) that provides deep information about the os. Your agent can then query the fixed part on an host and get the information, then it can move around the network. Luca -- +-------------------------------+ Luca Ferrari cat...@us... The Aglets Project: http://aglets.sourceforge.net +-------------------------------+ -- Luca Ferrari flu...@ka... |