X-CGP-ClamAV-Result: CLEAN X-VirusScanner: Niversoft's CGPClamav Helper v1.25a (ClamAV 0.103.6/26820) X-Junk-Score: 0 [] X-KAS-Score: 0 [] Return-Path: Received: from [40.107.243.74] (HELO NAM12-DM6-obe.outbound.protection.outlook.com) by selbstdenker.ag (CommuniGate Pro SMTP 6.3.17) with ESMTPS id 29622064 for webobjects-dev@wocommunity.org; Thu, 23 Feb 2023 02:23:04 +0100 Received-SPF: pass receiver=post.selbstdenker.com; client-ip=40.107.243.74; envelope-from=Ramsey.Gurley@practicemojo.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SFAsX/NerjDHiwrMVHj0MpSd3Se7lx+Du49u5m8aVp4IwZ8viuupuxKv/PVwfP4PPJ6U9JMcoShtSaADvvnbei+WbYwqBSrztX5qjHpZNhR906FVAKr6tX1tXx6pl9Ht76QjWbzTr+Oc8xTYbUL3SCMfRa2W0pU2+7IAO6ejzcsGmfsU0KPlw/WdrGryctlLWU0Gin0EhOYbAC4GQcr3CYz3ifQf9muwXXTl4rBeanoRN9VtT4vVvj6AzJSeUdzihU7HJjBFCHQU0FBtHuXhWElzPcVUxCY3hgz7h8gk4XJzcDyIoEKdAZz0bJtkbeEQHauKud+KkRqgJ7rwP0l19g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wxcXM3bMhu+v5XT8iYVvdawpWF0nCVbLR9mUYd1hJwk=; b=gheU2umA+4yC+ozv/mXVcxSIFuQkfQ5y+ZGFeCIE3l1tWmWb+yoG9xYrU4lR8fnbbexB0wyidSJ0LcdR71yagNqa0r6uQ9rp6gb9xxfnuPzf2/ZTeGBO0x/BWicp/B3Z66HdhH07oJPIM5CJLP9f6/Y57zelvYFsLLV1PtgzqZgE+kmr3u4xz+kcox902S3YesA/BBbtFqSCJDMh+dVzhshwd6WmpPb8bDrMpYzZi+OGZcEsItYuvxTP9Vijpy7dpXlRFWH5fNx/8bmX2tMExNy3DZakbgosqr/xshXS/AIoGpiTpazZEODoq0ftS5yCyb/7t7oRhAa818qhW58+4Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=practicemojo.com; dmarc=pass action=none header.from=practicemojo.com; dkim=pass header.d=practicemojo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=prositesinc.onmicrosoft.com; s=selector2-prositesinc-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wxcXM3bMhu+v5XT8iYVvdawpWF0nCVbLR9mUYd1hJwk=; b=rLZ76JxRxXysJMi3WJ66ZruPZrgWt8cUa71UmMQUkFcTp2IpqISsj+mDL9DJOPGWSr+B8DXPEEQlwPb6C5oWnfJQNHZuAzKDXkxvngPpkbtxixCZ7ynqta9kqFo5mS4V2/RbMKMD/iA7bOl5J5QqUAbiSSHJWxekt1uYBjvQII0= Received: from BYAPR18MB2534.namprd18.prod.outlook.com (2603:10b6:a03:12e::29) by MN2PR18MB3509.namprd18.prod.outlook.com (2603:10b6:208:26d::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6111.21; Thu, 23 Feb 2023 01:22:40 +0000 Received: from BYAPR18MB2534.namprd18.prod.outlook.com ([fe80::880d:228f:b030:6700]) by BYAPR18MB2534.namprd18.prod.outlook.com ([fe80::880d:228f:b030:6700%7]) with mapi id 15.20.6111.021; Thu, 23 Feb 2023 01:22:40 +0000 From: Ramsey Gurley To: WebObjects & WOnder Development Subject: Re: [WO-DEV] Re: Load additional D2W models? Thread-Topic: [WO-DEV] Re: Load additional D2W models? Thread-Index: AQHZRyQBt7VFQxQsTE2oy5PTeaxvEQ== Date: Thu, 23 Feb 2023 01:22:40 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=practicemojo.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BYAPR18MB2534:EE_|MN2PR18MB3509:EE_ x-ms-office365-filtering-correlation-id: ab9678ae-a869-448f-9d27-08db153c74ad x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: JRFr4Tscmkfksv67zzlQuC5RScqj3Wcu7BIwnxkjpzZgKOxv1rtbG3ENV2ZCRgREnGUMkl0Il4NAx0TpJdjzC1TdTyMulQaYfotdjF0tdbe62x2NywtPQCF3BU9v8YyJpX7QQYkk9LAX6JQg6o7HsxCFWHZSCDYMC3NN/TmYS6ZB0OzOZs1pQmv7Rsx3zlOSYhv3UEckLq9eEWPdE3+QB2ynTPapbINVwXIjLzJYEm4jkerDw/J4eCk/Q5wstFW6vNKs7TltlCRsh0XIgoCa+yVWpG7z6eHYuLwiz1wAuZXr7NcNP0bcgVV7oiXJrghO203fv6ApgihZMP9NbdpwT8cYzHsI9olJSmGkMSPFnLy+nlu23SbJN7bcP/WxUnHZbb5Eny6uTuQndNPJqD9MmWKKjms8nDCyloBdgrCImyDrLhmOlzgH9+cJ0TU+lz7hgTLAEsWWGNnZ1aDRPR9/Z5iuSUdaA5myeawRlxobPRh/MAtzAhqMkAga9JHSWaPtxt+cF+ijjIsDAmlyVwbEeZNEnNZ9IyVGEvSnTAmrSZhKUqYpJbSCD/uvGzvsR6hHdtaP+mLiLgeg48jMv9lMYGIGKHeWlriPHu02bCoheCK0/9hRJbJvIYaaEIwKcF9rekCCTjtZR1p61d4ZZNxRfzXmLU9LBVBnRKjcUXwvvyCkqBtG93z4N7t0OW3t1H0D x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR18MB2534.namprd18.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(4636009)(366004)(376002)(346002)(39850400004)(396003)(136003)(451199018)(66899018)(19627405001)(38070700005)(33656002)(86362001)(52536014)(41300700001)(5660300002)(2906002)(122000001)(83380400001)(38100700002)(166002)(8936002)(8676002)(64756008)(66556008)(7696005)(76116006)(66446008)(966005)(66946007)(478600001)(6916009)(66476007)(55016003)(9686003)(186003)(53546011)(316002)(71200400001)(26005)(91956017)(6506007);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?cq/IOXCZufVS6wr885/1lSV7DsMd6eSGfu0c91l5c+qFWHuDl6VwKJ/H?= =?Windows-1252?Q?QVvlhqcK+mMTaQGBKy1OkvDQeIqYGiPC/H3KOGAIvxZ9+mfwcmBctv4v?= =?Windows-1252?Q?3BiRgrllPKQfhK1k5LlOCBLAYvh3lVQulNvTiMpYTkZRtLNyNq3cyZHo?= =?Windows-1252?Q?lTmq5KoS01vMdOTIbvYEgj8LTUQRD7FUEK6zagwobfUnIAuHLQWCybHb?= =?Windows-1252?Q?fN9OAN9igmbEiDBr/IHulWb7Dkplq5GiwTJJxQU2kpIDXPHOedYJMvlP?= =?Windows-1252?Q?akXk4+FD7OXoEdRAC3PZE8+023zEbjZLQ7wCmIWGxdrqjjoNXwi+BLVm?= =?Windows-1252?Q?7fQdDkLldNW1N0zdEYcLxIh1uzkwBkWvpp1DoU/ruyIUyovOkBLW6uvV?= =?Windows-1252?Q?vxktGqKkOBHnwoQdt2sH7cbPIIOGQ0VZ4uLN4HZetgwdeTOcAymONnj8?= =?Windows-1252?Q?0CMeQZODGQRBMY/5dqprc+GnlfHmJtFdxHL8jIf5PQ4lYOEZlbw239/T?= =?Windows-1252?Q?sA6oDGwil34nOzTAM1UXOTHNBXa6IJxo/FH6FHWpoa9ozhR78ShkXka7?= =?Windows-1252?Q?Fh5EqOwoN9BRdzqO17KKhgazudbHOHke79elQeT2Kr/FMqOSZYnHbFXX?= =?Windows-1252?Q?zNlBwMYF4aNapwb0diumQzCY9yfVkTfcClfpZFm7E/6uS/7k4B/a4FrJ?= =?Windows-1252?Q?leJiDf7ud3WvycFGx04Ot4y1GunTWpQNdOc3dpJFhfS5m7I80JH+AzNY?= =?Windows-1252?Q?nqiZ6dDRxiIbydfqndOF7YoEaYEoFmAxb0YJHUnw9/kThiwEtWNsN1op?= =?Windows-1252?Q?0M6B34qKRN81rjAAYZUERtM14dvILl0u1sd/huVS4CGUpig0vmrGbMab?= =?Windows-1252?Q?cVi6n4QW1HP3oymagHeJpqTA+HqePVhqBubXsQwCAxwowqhRxiE61whA?= =?Windows-1252?Q?uIKS5NSgbCeoWKsaWPDNq2CabL37XTCs1TLugE8A4NyvCr1xfQtM9QXz?= =?Windows-1252?Q?E9HENXLINcaXkpPwg1v4MuKJTbSenNzMZJ6VTyuK9+MnYNj++xqsyQqA?= =?Windows-1252?Q?ifskp0mrsti3b2+vlnkw8hktZcDSOZCUG1ZOzqkfisDuDCEQyiC4KIku?= =?Windows-1252?Q?pQD8nyg32OMMp6X+XXu779As5ul2eJgYrM16v97d8H/Dif2ETpWf3IjL?= =?Windows-1252?Q?pxPkWQjb9nZf4s3g+DX0aaFiHoZPFlGokpB2euDdyz34lm3bI1r3z1wJ?= =?Windows-1252?Q?v/TLc+vFuAFrNRNj0j3TLG8ra1W0Zwc+AfgO2XUX6iCRlua0N5ZzoS0J?= =?Windows-1252?Q?H6oO6RlbL8qBZp7GlX1bgH37vxdMu+A1tg6wd/5EgAnnKrkj5Vn+mtIk?= =?Windows-1252?Q?5qc9JJb4ksukmDNyp5UIR7jpdVRJ+eXt46/miPwqQCCIIbK84kzes4Uz?= =?Windows-1252?Q?LSOXmQ0Qhh+qZD+WsnrfWwjGRroCNy/ANFiA/VZG83faur1rFPbbdtJS?= =?Windows-1252?Q?E4Aah3M6xhkROMiLTsTrYTyKb+/g1nEApizz0NcmxsCvEKeLwYoUbOse?= =?Windows-1252?Q?SsRSg/nS7Z1oKWZojhgcbKFpK5+Ef0/hXXYo5XILSBk/jxm1eDwkR5/H?= =?Windows-1252?Q?2PrJ5BL033LHP1GfCiGNHGpkCBgadv9xE12cVQoxsYab8T2ChWksZkQL?= =?Windows-1252?Q?Pd+mSdTQwiE1qyt71vkYScHKJmTXGDHUPqVVjtchx3Ge5QCd6VaC0Q?= =?Windows-1252?Q?=3D=3D?= Content-Type: multipart/alternative; boundary="_000_BYAPR18MB2534D9C04AAD721AC5BB501186AB9BYAPR18MB2534namp_" MIME-Version: 1.0 X-OriginatorOrg: practicemojo.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR18MB2534.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ab9678ae-a869-448f-9d27-08db153c74ad X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Feb 2023 01:22:40.2656 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: de0a5129-99d3-4d35-a928-09047a134775 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: lWfC5tBRy381dedAIIyqILLpEFgC0E0UoWFmNvcDxFjxvIo5xZkAwHmKecazOgH5bJ3D1VynS21Im20npgo9VEsaz9WwOlNSfkxrl/kZx/k= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR18MB3509 --_000_BYAPR18MB2534D9C04AAD721AC5BB501186AB9BYAPR18MB2534namp_ Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable Have you tried scanning for your additional model names in a static{} block= in your application class? That should happen very early and seems like it= should have enough access to the classpath to find everything. I never rea= lly used additional model names and just used the d2w.d2wmodel/user.d2wmode= l files. ________________________________ From: WebObjects & WOnder Development on behalf of Markus Ruggiero (rucotec= ) Sent: Thursday, February 23, 2023 4:58 AM To: WebObjects & WOnder Development Subject: [WO-DEV] Re: Load additional D2W models? Please tick [ ] Nobody knows anything [ ] Nobody ever had such an idea and does not care [ ] Nobody out there anymore On 21 Feb 2023, at 15:38, Markus Ruggiero (rucotec) > wrote: I found this property =93er.directtoweb.ERD2WModel.additionalModelNames=94 = that can be use to load additional D2W model files. I want to make this pro= perty dynamic so that its list of model names is built from a directory sca= n of the resources folder (or a subfolder) and all models found are loaded.= This would allow to have models built around some grouping criteria like e= .g. per entity without having to manually maintain the list of names in the= properties file. I am in a prototype phase where I play extensively with a= rather extensive EOModel, adding and removing entities. Such functionality= would be great to have. Anyone done something like this? When during app startup would be a good ti= me to build this list? I think it must be done before D2W is initialized. P= robably application.run() right before calling super.run() might already be= too late? Open for any tip, idea, help, code snippets, whatever. Thanks a lot ---markus--- Markus Ruggiero rucotec GmbH web https://rucotec.ch Leonhardsberg 1 email markus.ruggiero@rucotec.ch 4051 Basel / Switzerland mobile +41 79 508 4701 ________________________________ Confidentiality Notice: This email, including all attachments and replies t= hereto, are covered by the Electronic Communications Privacy Act, 18 U.S.C.= Sections 2510-2521 and are legally privileged. This information is confide= ntial, and intended only for the use of the individuals or entities named a= bove. If you are not the intended recipient, you are hereby notified that a= ny disclosure, copying, distribution or the taking of any action in relianc= e on the contents of this transmitted information is strictly prohibited. P= lease notify us if you have received this transmission in error. Thank you. --_000_BYAPR18MB2534D9C04AAD721AC5BB501186AB9BYAPR18MB2534namp_ Content-Type: text/html; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable
Have you tried scanning for your additional model names in a static{} block= in your application class? That should happen very early and seems like it= should have enough access to the classpath to find everything. I never rea= lly used additional model names and just used the d2w.d2wmodel/user.d2wmodel files.


From: WebObjects & WOnder Development on behalf of Markus Ruggie= ro (rucotec)
Sent: Thursday, February 23, 2023 4:58 AM
To: WebObjects & WOnder Development
Subject: [WO-DEV] Re: Load additional D2W models?

Please tick
[  ] Nobody knows anything
[  ] Nobody ever had such an idea and does not care
[  ] Nobody out there anymore

On 21 Feb 2023, at 15:38, Markus Ruggiero (rucotec) <markus.ruggiero@rucotec.ch> wrote:

I found this property =93er.directtoweb.ERD2WModel.addition= alModelNames=94 that can be use to load additional D2W model files. I want = to make this property dynamic so that its list of model names is built from= a directory scan of the resources folder (or a subfolder) and all models found are loaded. This would allow to have= models built around some grouping criteria like e.g. per entity without ha= ving to manually maintain the list of names in the properties file. I am in= a prototype phase where I play extensively with a rather extensive EOModel, adding and removing entities.= Such functionality would be great to have.

Anyone done something like this? When during app startup would be a good ti= me to build this list? I think it must be done before D2W is initialized. P= robably application.run() right before calling super.run() might already be= too late?

Open for any tip, idea, help, code snippets, whatever.
Thanks a lot

---markus---





Markus Ruggiero


rucotec GmbH                &n= bsp;      web https://rucotec.ch
Leonhardsberg 1              <= /font>    = email markus.ruggiero@rucotec.ch
4051 Basel / Switzerland        mobile= &= nbsp;+41 79 508 4701









Confidentiality Notice: This email, including all attachments and= replies thereto, are covered by the Electronic Communications Privacy Act,= 18 U.S.C. Sections 2510-2521 and are legally privileged. This information = is confidential, and intended only for the use of the individuals or entities named above. If you are not the= intended recipient, you are hereby notified that any disclosure, copying, = distribution or the taking of any action in reliance on the contents of thi= s transmitted information is strictly prohibited. Please notify us if you have received this transmission in err= or. Thank you.
--_000_BYAPR18MB2534D9C04AAD721AC5BB501186AB9BYAPR18MB2534namp_--