View Single Post
  #10 (permalink)  
Old 10-07-2009, 11:12 AM
mune72 mune72 is offline
Active Member
 
Posts: 34
Default

Quote:
Originally Posted by scotty View Post
I don't think you can get the AccountCache singleton directly; it's used internally. However, it looks like you can use the Provisioning singleton and the get() method:

Code:
Provisioning prov = Provisioning.getInstance();
Account retAcct = prov.get(AccountBy.id, my_uid);
Unfortunally it doesn't work (I get a java compilation error)
Code:
<!-- test.jsp -->
<html>
	<head>
		<title>Prova</title>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1; Tue, 20 Aug 2996 14:25:27 GMT">
	</head>

<body>
<%@ page import="com.zimbra.cs.account.*, com.zimbra.cs.zimlet.*" %>

<% 
  out.println("JSP --> Ciao Mondo!");
  out.println("<BR>");

  String name = null;
  String my_uid = null;
  Provisioning prov = Provisioning.getInstance();
  javax.servlet.http.Cookie[] cookies = request.getCookies();
  String authTokenString = "";
  Account acct = null;

  for (javax.servlet.http.Cookie cookie : cookies) {
     if (cookie.getName().equals("ZM_AUTH_TOKEN")) {
        authTokenString = cookie.getValue();
     }
  }

  if (!authTokenString.equals("")) {
     AuthToken authToken = AuthToken.getAuthToken(authTokenString);
     acct = prov.get(Provisioning.AccountBy.id, authToken.getAccountId());
  }

   if (acct != null) {
	name = acct.getName();
	out.println(name);
   }
   if (acct != null) {
        my_uid = acct.getId();
        out.println(my_uid);
        out.println("<BR>"+"retAcct"+"<BR>");
        Provisioning prov1 = Provisioning.getInstance();
        Account retAcct = prov1.get(AccountBy.id, my_uid);
       /*
       if (retAcct != null) {
	   name = retAcct.getName();
           out.println(name);
       }
       if (retAcct != null) {
	   my_uid = retAcct.getId();
   	   out.println(my_uid);
       }
       */
   }
%>
</body>
</html>
Reply With Quote