Return-Path: Delivered-To: apmail-tomcat-users-archive@www.apache.org Received: (qmail 44836 invoked from network); 8 Aug 2006 21:26:00 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 8 Aug 2006 21:26:00 -0000 Received: (qmail 7620 invoked by uid 500); 8 Aug 2006 21:25:47 -0000 Delivered-To: apmail-tomcat-users-archive@tomcat.apache.org Received: (qmail 7600 invoked by uid 500); 8 Aug 2006 21:25:47 -0000 Mailing-List: contact users-help@tomcat.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Tomcat Users List" Delivered-To: mailing list users@tomcat.apache.org Received: (qmail 7583 invoked by uid 99); 8 Aug 2006 21:25:47 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Aug 2006 14:25:47 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of miki@ceti.pl designates 62.121.128.10 as permitted sender) Received: from [62.121.128.10] (HELO relay.ceti.pl) (62.121.128.10) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Aug 2006 14:25:45 -0700 Received: from tau.ceti.pl (tau.ceti.pl [62.121.128.11]) by relay.ceti.pl (Postfix) with ESMTP id 87F28D4FCF for ; Tue, 8 Aug 2006 23:25:23 +0200 (CEST) Received: from [192.168.0.101] (host-ip194-227.crowley.pl [62.111.227.194]) by tau.ceti.pl (Postfix) with ESMTP id 58B0F202FF0 for ; Tue, 8 Aug 2006 23:25:23 +0200 (CEST) Message-ID: <44D90142.6060603@ceti.pl> Date: Tue, 08 Aug 2006 23:25:22 +0200 From: Mikolaj Rydzewski User-Agent: Thunderbird 1.5 (X11/20060211) MIME-Version: 1.0 To: Tomcat Users List Subject: Re: User database and user attributes References: In-Reply-To: Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg=sha1; boundary="------------ms000900010705040501010100" X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N --------------ms000900010705040501010100 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Robert Harper wrote: > > I am using the Tomcat user database to hold information for users. > What I need to do is retrieve the group a user is in from the > database. My problem comes when I have a servlet add a new user, > assign it to a roll and a group, then try to access the user from > another servlet running in the same context. I often get exceptions > thrown when I call the save() method on the user object stating that > Tomcat cannot rename the tomcat-users.xml to tomcat-users.xml.old. The > user info is still in memory and if enough time passes or the server > is stopped, the data eventually gets flushed to disk. There are > methods for finding the user, finding a roll, and finding a group, but > I don’t see a method for finding a group for a given user using the > MBeanServer(). > > I had been using the XML libraries to load the database and then > search through it finding the user then getting the assigned roll but > it only works when the new user information is flushed to disk. What > would be the best way to do this? > Use some kind of a database related realm: * http://tomcat.apache.org/tomcat-5.5-doc/realm-howto.html#JDBCRealm * http://tomcat.apache.org/tomcat-5.5-doc/realm-howto.html#DataSourceRealm Memory realm (tomcat-users.xml file) is a very simple one, following documentation: "*MemoryRealm* is a simple demonstration implementation of the Tomcat 5 |Realm| interface. It is not designed for production use." -- Mikolaj Rydzewski http://ceti.pl/~miki/ PGP KeyID: 8b12ab02 There are three kinds of people: men, women and unix. --------------ms000900010705040501010100 Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIJwTCC AzswggKkoAMCAQICEFOQ1xgDgtvHcHmAlXWrio4wDQYJKoZIhvcNAQEEBQAwYjELMAkGA1UE BhMCWkExJTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMT I1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5nIENBMB4XDTA2MDIxNTIyMzMwOVoX DTA3MDIxNTIyMzMwOVowgY8xEjAQBgNVBAQTCVJ5ZHpld3NraTEVMBMGA1UEKgwMTWlrbyYj MzIyO2FqMR8wHQYDVQQDDBZNaWtvJiMzMjI7YWogUnlkemV3c2tpMRswGQYJKoZIhvcNAQkB FgxtaWtpQGNldGkucGwxJDAiBgkqhkiG9w0BCQEWFW1pa29sYWpAcnlkemV3c2tpLm9yZzCC ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN1eD7unCEYT0MEIVhmSzeTle78UW2Vv aJgzqXvqIOQscRN0DNx1tccXUW9pmsGDK3MtFQD2SWAevW9esF1Xh4Y5iGHiL0MDUEpuTgIr qZw+ui1qWcWXMux/0jwtlWwdb+7aGjK+7DgnxD07U5Y8+qE5xHZpNqxwdLFsNuM3+IKNNhGt CIV2LAHQ2WH3d1/HXdxA5bLAOF8CYrJrNQwucHPxPyCE9IIyw82VAsdUu7O7C+6blgOGUO1I tV4fLxG6UrTkG2kW5nOcUhq8H9IxWco1jO8zRJ8+f7zCS7afZmjrMw+te0qmNBvnixSmKZPa Q+4JI7vXmegzFGlGn4E9faMCAwEAAaNAMD4wLgYDVR0RBCcwJYEMbWlraUBjZXRpLnBsgRVt aWtvbGFqQHJ5ZHpld3NraS5vcmcwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQQFAAOBgQCF uDcx/OZY6d2TOgaq2/2ZXg96SNcwz4JOgY/8Tr+goW8uJr47GOBe8JP6Wgr/Arjne3ZH5JWy Nf8rtDqxfVL7Oj67wqpdOWYGLemRLhKfT9zFvNP0JnUDxiBHoeoh/XlUl+xZwU43J/7YEOX2 VwZFWI0Kz2iWIYtElh1+7xyBWzCCAzswggKkoAMCAQICEFOQ1xgDgtvHcHmAlXWrio4wDQYJ KoZIhvcNAQEEBQAwYjELMAkGA1UEBhMCWkExJTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0aW5n IChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5n IENBMB4XDTA2MDIxNTIyMzMwOVoXDTA3MDIxNTIyMzMwOVowgY8xEjAQBgNVBAQTCVJ5ZHpl d3NraTEVMBMGA1UEKgwMTWlrbyYjMzIyO2FqMR8wHQYDVQQDDBZNaWtvJiMzMjI7YWogUnlk emV3c2tpMRswGQYJKoZIhvcNAQkBFgxtaWtpQGNldGkucGwxJDAiBgkqhkiG9w0BCQEWFW1p a29sYWpAcnlkemV3c2tpLm9yZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN1e D7unCEYT0MEIVhmSzeTle78UW2VvaJgzqXvqIOQscRN0DNx1tccXUW9pmsGDK3MtFQD2SWAe vW9esF1Xh4Y5iGHiL0MDUEpuTgIrqZw+ui1qWcWXMux/0jwtlWwdb+7aGjK+7DgnxD07U5Y8 +qE5xHZpNqxwdLFsNuM3+IKNNhGtCIV2LAHQ2WH3d1/HXdxA5bLAOF8CYrJrNQwucHPxPyCE 9IIyw82VAsdUu7O7C+6blgOGUO1ItV4fLxG6UrTkG2kW5nOcUhq8H9IxWco1jO8zRJ8+f7zC S7afZmjrMw+te0qmNBvnixSmKZPaQ+4JI7vXmegzFGlGn4E9faMCAwEAAaNAMD4wLgYDVR0R BCcwJYEMbWlraUBjZXRpLnBsgRVtaWtvbGFqQHJ5ZHpld3NraS5vcmcwDAYDVR0TAQH/BAIw ADANBgkqhkiG9w0BAQQFAAOBgQCFuDcx/OZY6d2TOgaq2/2ZXg96SNcwz4JOgY/8Tr+goW8u Jr47GOBe8JP6Wgr/Arjne3ZH5JWyNf8rtDqxfVL7Oj67wqpdOWYGLemRLhKfT9zFvNP0JnUD xiBHoeoh/XlUl+xZwU43J/7YEOX2VwZFWI0Kz2iWIYtElh1+7xyBWzCCAz8wggKooAMCAQIC AQ0wDQYJKoZIhvcNAQEFBQAwgdExCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENh cGUxEjAQBgNVBAcTCUNhcGUgVG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAm BgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNpb24xJDAiBgNVBAMTG1RoYXd0 ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTErMCkGCSqGSIb3DQEJARYccGVyc29uYWwtZnJlZW1h aWxAdGhhd3RlLmNvbTAeFw0wMzA3MTcwMDAwMDBaFw0xMzA3MTYyMzU5NTlaMGIxCzAJBgNV BAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQD EyNUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgSXNzdWluZyBDQTCBnzANBgkqhkiG9w0BAQEF AAOBjQAwgYkCgYEAxKY8VXNV+065yplaHmjAdQRwnd/p/6Me7L3N9VvyGna9fww6YfK/Uc4B 1OVQCjDXAmNaLIkVcI7dyfArhVqqP3FWy688Cwfn8R+RNiQqE88r1fOCdz0Dviv+uxg+B79A gAJk16emu59l0cUqVIUPSAR/p7bRPGEEQB5kGXJgt/sCAwEAAaOBlDCBkTASBgNVHRMBAf8E CDAGAQH/AgEAMEMGA1UdHwQ8MDowOKA2oDSGMmh0dHA6Ly9jcmwudGhhd3RlLmNvbS9UaGF3 dGVQZXJzb25hbEZyZWVtYWlsQ0EuY3JsMAsGA1UdDwQEAwIBBjApBgNVHREEIjAgpB4wHDEa MBgGA1UEAxMRUHJpdmF0ZUxhYmVsMi0xMzgwDQYJKoZIhvcNAQEFBQADgYEASIzRUIPqCy7M DaNmrGcPf6+svsIXoUOWlJ1/TCG4+DYfqi2fNi/A9BxQIJNwPP2t4WFiw9k6GX6EsZkbAMUa C4J0niVQlGLH2ydxVyWN3amcOY6MIE9lX5Xa9/eH1sYITq726jTlEBpbNU1341YheILcIRk1 3iSx0x1G/11fZU8xggNkMIIDYAIBATB2MGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3 dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJl ZW1haWwgSXNzdWluZyBDQQIQU5DXGAOC28dweYCVdauKjjAJBgUrDgMCGgUAoIIBwzAYBgkq hkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0wNjA4MDgyMTI1MjJaMCMG CSqGSIb3DQEJBDEWBBRgBKlsdbwhDBBmy7OwpdyqFBZDYTBSBgkqhkiG9w0BCQ8xRTBDMAoG CCqGSIb3DQMHMA4GCCqGSIb3DQMCAgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzANBggq hkiG9w0DAgIBKDCBhQYJKwYBBAGCNxAEMXgwdjBiMQswCQYDVQQGEwJaQTElMCMGA1UEChMc VGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFs IEZyZWVtYWlsIElzc3VpbmcgQ0ECEFOQ1xgDgtvHcHmAlXWrio4wgYcGCyqGSIb3DQEJEAIL MXigdjBiMQswCQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkg THRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0ECEFOQ 1xgDgtvHcHmAlXWrio4wDQYJKoZIhvcNAQEBBQAEggEAiU25T5XgbPfbMFpx/mbYciFCfjbv 4NNaRSzNcdlgi25af4yv0G8Nn58gfjpUHh2Q6fSsHU4zx3KC+9zGWu9JQKQGoJ6H9UtMky6n 0YQ7TBKA8UkQcZVgrC2rYJBqprplrJMEAv+/sS8+VOrRSjTKC+i8nZyw4PugRzFeNrHsvUAo Ls9LA2dJJSuh6+LpKXD3VY3kSrdo5afsA0ufEeibOX7HcV1Zmepur4fZLPjxjTn5eYb9CXiv V5YRYvG/ANRd4xBe8EzHZKnPMsSBo3kBg2K7WNB1ENItk2rN0NPOKyY7YogqdLjif6f5bs8O voMIgkJK21jbyCr7eJnI8UyJEwAAAAAAAA== --------------ms000900010705040501010100--