[AG-TECH] Graceful detection of proxy expiration in Shared Apps

Randy Groves randy.groves at boeing.com
Thu Jul 22 13:11:26 CDT 2004


I don't know yet, since I'm still on the edges of this, whether there is a 
routine that can be accessed, or if this is built into the Shared App 
Client, but I was hit with a shared application that was trying to execute 
across the boundary of a proxy expiration.  The Venue Client didn't show 
any problems (that is, until I tried to access the venue again, by hitting 
'go'), but the app was dying with no obvious errors (the python command 
window would pop up, spit out a message quickly, then die).  When I ran the 
app with a pointer to the app url in a command window, I find an error message:

C:\Documents and Settings\grovesr\Application 
Data\AccessGrid\SharedApplications
\Immersaview_Launcher>immersaviewlauncher.py -a 
https://venues.rt.cs.boeing.com:
8000/104
Traceback (most recent call last):
   File "C:\Documents and Settings\grovesr\Application 
Data\AccessGrid\SharedAppl
ications\Immersaview_Launcher\ImmersaviewLauncher.py", line 900, in ?
     il = ImmersaviewLauncher( appURL )
   File "C:\Documents and Settings\grovesr\Application 
Data\AccessGrid\SharedAppl
ications\Immersaview_Launcher\ImmersaviewLauncher.py", line 692, in __init__
     (self.publicId, self.privateId) = self.__appProxy.Join()
   File 
"C:\Python22\Lib\site-packages\AccessGrid\hosting\pyGlobus\AGGSISOAP.py",
  line 3660, in __call__
     return self.__r_call(*args, **kw)
   File 
"C:\Python22\Lib\site-packages\AccessGrid\hosting\pyGlobus\AGGSISOAP.py",
  line 3680, in __r_call
     self.__hd, self.__ma)
   File 
"C:\Python22\Lib\site-packages\AccessGrid\hosting\pyGlobus\AGGSISOAP.py",
  line 3580, in __call
     config = self.config)
   File 
"C:\Python22\Lib\site-packages\AccessGrid\hosting\pyGlobus\Client.py", li
ne 188, in call
     r.endheaders()
   File "C:\Python22\lib\httplib.py", line 695, in endheaders
     self._send_output()
   File "C:\Python22\lib\httplib.py", line 581, in _send_output
     self.send(msg)
   File "C:\Python22\lib\httplib.py", line 548, in send
     self.connect()
   File "C:\Python22\Lib\site-packages\pyGlobus\io.py", line 1084, in connect
     self.sock.connect(self.host, self.port, self.io_attr)
   File "C:\Python22\Lib\site-packages\pyGlobus\io.py", line 663, in connect
     raise ex
pyGlobus.io.GSITCPSocketException: no credentials:
Credentials Expiredproxy expired: run grid-proxy-init or wgpi first
         File=C:\DOCUME~1\grovesr\LOCALS~1\Temp\proxy
   Function:proxy_init_cred
18:10:13: Debug: e:\projects\wx\src\msw\app.cpp(439): 'UnregisterClass(canvas)'
failed with error 0x00000584 (class still has open windows.).

This is a 2.1.2 shareed app and like I said - perhaps there is a routine to 
use here to check on invocation and perhaps the new shared app client does 
this more gracefully.  But if not ...

-randy





More information about the ag-tech mailing list