X-CGP-ClamAV-Result: CLEAN X-VirusScanner: Niversoft's CGPClamav Helper v1.22.2a (ClamAV engine v0.102.2) X-Junk-Score: 0 [] X-KAS-Score: 0 [] Return-Path: Received: from mail-ed1-f47.google.com ([209.85.208.47] verified) by selbstdenker.ag (CommuniGate Pro SMTP 6.3.7) with ESMTPS id 27037218 for webobjects-dev@wocommunity.org; Thu, 30 Dec 2021 04:37:12 +0100 Received-SPF: pass receiver=post.selbstdenker.com; client-ip=209.85.208.47; envelope-from=stavros.panidis@gmail.com Received: by mail-ed1-f47.google.com with SMTP id q14so85413175edi.3 for ; Wed, 29 Dec 2021 19:37:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=ZcHyDmMivhapvubZ1uyCVIJlK4u4X/o/6wjasLLSeLs=; b=WckNxcO3AFByJD+o34oDSe7+pTk1+URIgefnOMoTVqCEQxgl9SU6HwdIaS8MkLCQIp M+1N57srIkJcya0n0AoCzuzVqa1J+YmNLaryEH0pMRpoN9IdfQ9jfpRTx6EVZbeHIG77 jerO2JEQ9kcwarBjkNZtVubMtJr6as6WiWxFn9mpB9lY97zyXvglLhCJZzYqzhubnex4 q9ZbmbXQzwQ5EtLD5NMjWsKxrcNrZQFCqQL1+KDtiCx5VunCiL8x91z0stGsyqB4baIE QNBEmY84AfAouCBlUoVDSqzzLp8CvHSC+JILx7bAznsiQruIm2kYRoeLOO0OAwjzCOR3 bOIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=ZcHyDmMivhapvubZ1uyCVIJlK4u4X/o/6wjasLLSeLs=; b=EtQgBlUXFWnVfKBASsHJzqswLk/cDvXWxJm3vN85eDKtRsivwpjrv0YnQ6QP24I1LZ Rk7/nI6TQrB0IzAjidZm+4+3hAUZl1lD6xVbpRr6quR8CoNV2Jx+TfkUQnTKdwD8yDnB DO8Bt0JBolnCXy8bgpOhNCaGNRKBRGDTbEDii8p5HF9AmH55tNHXVQ4VPWtv/8EMhQc5 ABoZX7sjkpYa1zxM1gSnjZAJM2jrwpSqxlaRwJGXtn1EsW5VGS+uFxqggBXEUwHmutwB W0mDGwwIsx65S1qGBAEoj6RRAT2LnmUM5YfFzv/zKyu/iFmJ0bex0qB7PPsOJg6Cc0T1 60Mg== X-Gm-Message-State: AOAM531A2UsNu87tuB8XJ/Boeav7siMCySFHZVP96uB2+sD3uJP7dXWS TJB7X/fm5yqNd7CjgvYEBJKB3UIC9XJKOA== X-Google-Smtp-Source: ABdhPJyW4gVcIEopHPGrF+XBYSabOO8UmBTgMDlv1o62JKnTY1cl3fv/znsfXEj8PEVfQnvHLYs0nA== X-Received: by 2002:a17:906:7305:: with SMTP id di5mr23243314ejc.702.1640835411875; Wed, 29 Dec 2021 19:36:51 -0800 (PST) Return-Path: Received: from smtpclient.apple (oou0mj.static.otenet.gr. [79.129.3.166]) by smtp.gmail.com with ESMTPSA id nd36sm7214838ejc.196.2021.12.29.19.36.49 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 29 Dec 2021 19:36:51 -0800 (PST) From: Stavros Panidis Message-Id: <2D829533-7F42-4D0D-9252-FC38F3160F7A@gmail.com> Content-Type: multipart/alternative; boundary="Apple-Mail=_2408B6D8-7FCD-407C-A34B-2547F9C98B3B" Mime-Version: 1.0 (Mac OS X Mail 15.0 \(3693.40.0.1.81\)) Subject: Re: [WO-DEV] Installation on osx Monterey - deployment Date: Thu, 30 Dec 2021 05:36:44 +0200 In-Reply-To: Cc: markus.ruggiero@rucotec.ch To: WebObjects & WOnder Development References: X-Mailer: Apple Mail (2.3693.40.0.1.81) --Apple-Mail=_2408B6D8-7FCD-407C-A34B-2547F9C98B3B Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On 28 Dec 2021, at 9:20 PM, Markus Ruggierorucotec = wrote: >=20 > Even if you do not go with Maven it is actually very simple. >=20 > Edit your build.xml file a little bit (see below). When you ant build = your app one file that gets created is UNIXClasspath.txt (or some such) = that contains header comments that the run script will use. One such = comment is JVMOptions. These are not populated but you can fix this = easily: >=20 > build.xml: >=20 > in the init.properties target define a variable: >=20 > =09 > add this >>>> >=20 > then in the target build.woapp add jvmOptions=3D=E2=80=9C${jvmOptions}=E2= =80=9D as you can see on the next line >=20 > =20 > All done, build your deployment app with ant and the woapplication = builder will happily put the jvmOptions into the UNIXClasspath.txt file = from where the run script will take it an put into the right place on = the command line. >=20 > One time setup, all done. Its work, I have just recently deployed a = Wonder app on Ubuntu 20.something running with JRE 17. >=20 > Have fun, IT SIMPLY WORKS! Really, it does. Someone put a lot of = thought into this 15 years ago. >=20 > ---markus--- >=20 >=20 Dear Marcus, Probably I am doing something wrong, I am also sure that this is = something very simple, as usual, but sorry, I can=E2=80=99t find what it = is. There is no problem with server for sure. The same application compiled = before upgrade to Monterey - Eclipse - Java 17 is deployed with no = problems. The new one can=E2=80=99t be started. Following is my build.xml where I = suppose that there is something wrong: =09 =09 = =09 = =09 =20 =20 =20 =09 Can you please suggest something more? Last chance to save my New Year = Eve. Stavros --Apple-Mail=_2408B6D8-7FCD-407C-A34B-2547F9C98B3B Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8

On 28 Dec 2021, at 9:20 PM, Markus Ruggierorucotec <markus.ruggiero@rucotec.ch> wrote:

Even if you do not go = with Maven it is actually very simple.

Edit your build.xml file a little bit = (see below). When you ant build your app one file that gets created is = UNIXClasspath.txt (or some such) that contains header comments that the = run script will use. One such comment is JVMOptions. These are not = populated but you can fix this easily:

build.xml:

in the init.properties target define a = variable:

= <target name=3D"init.properties"> =
add this >>>> = <property name=3D"jvmOptions" = value=3D"--add-exports = java.base/sun.security.action=3DALL-UNNAMED"/>

then in the target = build.woapp add jvmOptions=3D=E2=80=9C${jvmOptions}=E2=80=9D as you can = see on the next line

<woapplication = name=3D"${build.app.name}" jvmOptions=3D"${jvmOptions}=E2=80= =9D frameworksBas ...........

All done, build your deployment app = with ant and the woapplication builder will happily put the jvmOptions = into the UNIXClasspath.txt file from where the run script will take it = an put into the right place on the command line.

One time setup, all done. Its work, I = have just recently deployed a Wonder app on Ubuntu 20.something running = with JRE 17.

Have fun, IT SIMPLY WORKS! Really, it does. Someone put a lot = of thought into this 15 years ago.

---markus---



Dear Marcus,

Probably I am doing something wrong, I = am also sure that this is something very simple, as usual, but sorry, I = can=E2=80=99t find what it is.

There is no problem with server for = sure. The same application compiled before upgrade to Monterey - Eclipse = - Java 17 is deployed with no problems.

The new one can=E2=80=99t be started. = Following is my build.xml where I suppose that there is something = wrong:

<project name=3D"EasyShop" default=3D"build" = basedir=3D".">
= <target = name=3D"build" depends=3D"init.build,build.woapp,javaclient,ssdd,war,sp= lit,package" />

= <target = name=3D"install" depends=3D"init.install,build.woapp,javaclient,ssdd,war,= split,package" />

= <target = name=3D"clean" depends=3D"init.properties">
= <delete = dir=3D"bin" />
<delete dir=3D"dist" />
= </target>

= <!-- basic initializations  -->
<target name=3D"init.install" depends=3D"init.properties">
= <tstamp = />
= <property = name=3D"dest.dir" value=3D"${wo.apps.root}" />
= </target>

= <target = name=3D"init.build" depends=3D"init.properties">
= <tstamp = />
= <property = name=3D"dest.dir" = value=3D"dist" = />
= </target>


= <!-- property determination  -->
<target name=3D"init.properties">
= <property = name=3D"jvmOptions" value=3D"--add-exports = java.base/sun.security.action=3DALL-UNNAMED"/>


= <property = file=3D"build.properties" />

= <property = name=3D"wolips.properties" value=3D"${user.home}${file.separator}Library${file.sepa= rator}Application = Support${file.separator}WOLips${file.separator}wolips.properties" />
= <property = file=3D"${wolips.properties}" />
= <condition = property=3D"wo.properties.check.failed">
= <not>
= <and>
= <isset = property=3D"wo.system.frameworks" />
= <isset = property=3D"wo.local.frameworks" />
= </and>
= </not>
= </condition>
= <fail = message=3D"The = properties 'wo.system.frameworks' and 'wo.local.frameworks' must be set. = Check that your ${wolips.properties} is correct." if=3D"wo.properties.check.failed" />

= <property = name=3D"build.app.name" value=3D"${project.name}" />
= <property = name=3D"build.app.name.lowercase" value=3D"${project.name.lowercase}" />
= </target>

= <!-- This copies webserver resources from app.woa's = embedded frameworks into split install bundle -->
<target name=3D"split"= description=3D"Ad= ds embedded framework webserver resources to the split install bundle by = copying from deployment build bundle" unless=3D"servletDeployment">
= <property = name=3D"wsdest.dir" value=3D"${dest.dir}/Split" />
= <mkdir = dir=3D"${wsdest.dir}"/>
= <copy = todir=3D"${wsdest.dir}/WebObjects/${build.app.name}.woa"= verbose=3D"true">
= <fileset = dir=3D"${dest.dir}/${build.app.name}.woa/Contents">
= <include = name=3D"Frameworks/*.framework/WebServerResources/**"/>
= </fileset>
= <fileset = dir=3D"${dest.dir}/${build.app.name}.woa">
= <include = name=3D"Contents/WebServerResources/**"/>
= </fileset>
= </copy>
= </target>

  <target = name=3D"package" unless=3D"servletDeployment">
    <tar = destfile=3D"${dest.dir}/${build.app.name}-Application.ta= r.gz"
        = compression=3D"gzip"
    =     longfile=3D"gnu">
      <tarfileset dir=3D"${dest.dir}" = mode=3D"750">
        <include name=3D"${build.app.name}.woa/${build.app.name}"/>
      = </tarfileset>
    =   <tarfileset = dir=3D"${dest.dir}">
        <exclude name=3D"${build.app.name}.woa/${build.app.name}"/>
        = <include name=3D"${build.app.name}.woa/**"/>
      = </tarfileset>
    = </tar>
    = <tar destfile=3D"${dest.dir}/${build.app.name}-WebServerResou= rces.tar.gz"
    =     compression=3D"gzip"
    =     basedir=3D"${wsdest.dir}/WebObjects"
        = longfile=3D"gnu"
    =     includes=3D"${build.app.name}.woa/**">
    </tar>
= </target>

= <!-- woproject tasks -->
= <target = name=3D"build.woapp" depends=3D"compile">
= <taskdef = name=3D"woapplication" classname=3D"org.objectstyle.woproject.ant.WOApplication= "/>
<woapplication name=3D"${build.app.name}" jvmOptions=3D"${jvmOptions}" frameworksBaseURL=3D"/WebObjects/${build.app.name}.woa/F= rameworks" destDir=3D"${dest.dir}" customInfoPListContent=3D"${customInfoPListContent}" principalClass=3D"${principalClass}" webXML=3D"${webXML}" webXML_CustomContent=3D"${webXML_CustomContent}" servletAdaptor=3D"er.extensions.jspservlet.ERXServletAda= ptor">
<classes dir=3D"${classes.dir}">
= <includesfile name=3D"woproject/classes.include.patternset" />
= <excludesfile name=3D"woproject/classes.exclude.patternset" />
        <exclude if=3D"javaClient" name=3D"**/client/**/*.*"/>
= </classes>

= <wsresources dir=3D".">
= <includesfile name=3D"woproject/wsresources.include.patternset" />
= <excludesfile name=3D"woproject/wsresources.exclude.patternset" />
= </wsresources>

= <resources dir=3D".">
= <includesfile name=3D"woproject/resources.include.patternset" />
= <excludesfile name=3D"woproject/resources.exclude.patternset" />
        <exclude if=3D"javaClient" name=3D"**/client/**/*.*"/>
= </resources>

= <frameworks= root=3D"ProjectLocal" embed=3D"${embed.ProjectLocal}" eclipse=3D"true" />
= <frameworks= root=3D"External" embed=3D"${embed.External}" eclipse=3D"true" />
= <frameworks = root=3D"Local" = embed=3D"${embed.Local}" eclipse=3D"true" = />
= <frameworks = root=3D"User" embed=3D"${embed.User}" eclipse=3D"true" = />
= <frameworks = root=3D"System" = embed=3D"${embed.System}" eclipse=3D"true" = />
= <frameworks= root=3D"Network" embed=3D"${embed.Network}" eclipse=3D"true" />

= <lib = dir=3D"Libraries">
= <include = name=3D"*.jar" = />
= </lib>
= </woapplication>
= </target>


= <target = name=3D"javaclient" if=3D"javaClient" depends=3D"build.woapp">
= <mkdir = dir=3D"${dest.dir}/${build.app.name}.woa/Contents/WebSer= verResources/Java" = />
<jar basedir=3D"${classes.dir}" excludes=3D"**/server/**/*.*, **/server/**/" jarfile=3D"${dest.dir}/${build.app.name}.woa/Contents/We= bServerResources/Java/${build.app.name}.jar"/>
= </target>

= <target = name=3D"war" if=3D"servletDeployment" depends=3D"ssdd">
= <war = destfile=3D"${dest.dir}/${build.app.name}.war" webxml=3D"${dest.dir}/${build.app.name}/WEB-INF/web.xml"= >
<fileset dir=3D"${dest.dir}/${build.app.name}">
= <include name=3D"**" = />
= </fileset>
= </war>
= </target>

= <!-- To use this target
    1) create the LICENSE in your = project directory
    2) add JavaWOJSPServlet in your = WOFrameworks build path
    3) set servlet deployment to true = in WOLips Properties
    -->
= <target = name=3D"ssdd" if=3D"servletDeployment" depends=3D"build.woapp">
= <mkdir = dir=3D"${dest.dir}/${build.app.name}/WEB-INF/classes" />
= <mkdir = dir=3D"${dest.dir}/${build.app.name}/WEB-INF/tlds" />
= <copy = todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset = dir=3D"${dest.dir}/${build.app.name}.woa/Contents/">
= <include = name=3D"web.xml" = />
= </fileset>
= </copy>
= <copy = todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset dir=3D"..">
= <include = name=3D"LICENSE" = />
= </fileset>
= </copy>
= <copy = todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset = dir=3D"${dest.dir}">
= <include = name=3D"${build.app.name}.woa/**" />
= </fileset>
= </copy>
= <!-- copy the frameworks to the WEBINFROOT/Library = directory -->
= <copy = todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset = dir=3D"${dest.dir}/${build.app.name}.woa/Contents">
= <include name=3D"Library/**" = />
= </fileset>
= </copy>
= <copy = todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset = dir=3D"${dest.dir}/${build.app.name}.woa">
= <include name=3D"Resources/**"= />
= </fileset>
= </copy>
= <copy = todir=3D"${dest.dir}/${build.app.name}/WEB-INF/lib/">
<fileset dir=3D"${dest.dir}/${build.app.name}/WEB-INF">
= <include = name=3D"**/Resources/**/*.jar" />
= </fileset>
= <mapper= type=3D"flatten" = />
= </copy>

= <!--  Get the necessary Frameworks from the = webobjects system root instead of the project wrapper -->
<copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/lib" file=3D"${wo.system.frameworks}/JavaWOJSPServlet.framewo= rk/WebServerResources/Java/JavaWOJSPServlet_client.jar" />

= <copy = todir=3D"${dest.dir}/${build.app.name}/WEB-INF/tlds">
<fileset dir=3D"${wo.system.frameworks}/JavaWOJSPServlet.framewor= k/Resources/">
= <include = name=3D"WOtaglib_1_0.tld" />
= </fileset>
= </copy>

= <!-- the WebObject Extensions -->
<copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/lib">
<fileset dir=3D"${wo.extensions}">
= <include name=3D"*.jar" = />
= <exclude = name=3D"servlet.jar" = />
= </fileset>
= <mapper= type=3D"flatten" = />
= </copy>

=

= <!-- the Java Client Client-Side Classes   = -->
<copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/${build.a= pp.name}.woa/Contents/WebServerResources/Java">
= <fileset = dir=3D"${wo.local.frameworks}"> 
= <include = name=3D"**/WebServerResources/Java/*.jar"/> 
= </fileset> 
= <mapper = type=3D"flatten"/>
= </copy>

=

= <!-- fix the Macos*ClassPath.txt files  = -->
<replaceregexp file=3D"${dest.dir}/${build.app.name}/WEB-INF/${build.ap= p.name}.woa/Contents/MacOS/MacOSClassPath.txt" match=3D"APPROOT/Resources/Java/${build.app.name.lowerca= se}.jar" replace=3D"APPROOT/${build.app.name}.woa/Contents/Resour= ces/Java/${build.app.name.lowercase}.jar" byline=3D"true" />
= <replaceregexp file=3D"${dest.dir}/${build.app.name}/WEB-INF/${build.ap= p.name}.woa/Contents/MacOS/MacOSXServerClassPath.txt" match=3D"APPROOT/Resources/Java/${build.app.name.lowerca= se}.jar" replace=3D"APPROOT/${build.app.name}.woa/Contents/Resour= ces/Java/${build.app.name.lowercase}.jar" byline=3D"true" />

= <!-- fix the web.xml file:  the app itself needs = build.app.name/Contents -->
= <replaceregexp file=3D"${dest.dir}/${build.app.name}/WEB-INF/web.xml" match=3D"WEBINFROOT/Resources/Java/${build.app.name.lowe= rcase}.jar" replace=3D"WEBINFROOT/${build.app.name}.woa/Contents/Res= ources/Java/${build.app.name.lowercase}.jar" byline=3D"true" />

= <!-- fix the web.xml file to remove the extra = Frameworks/ directory level for the frameworks -->
<replaceregexp file=3D"${dest.dir}/${build.app.name}/WEB-INF/web.xml" match=3D"WEBINFROOT/Frameworks//" replace=3D"WEBINFROOT/" byline=3D"true" />
= </target>

= <target = name=3D"compile" depends=3D"init.properties">
= <taskdef = name=3D"wocompile" classname=3D"org.objectstyle.woproject.ant.WOCompile" />

= <mkdir = dir=3D"bin" />
<wocompile srcdir=3D"Sources" destdir=3D"bin">
= <frameworks root=3D"ProjectLocal"= embed=3D"false" = eclipse=3D"true" = />
= <frameworks = root=3D"External" = embed=3D"false" = eclipse=3D"true" = />
= <frameworks = root=3D"Local" = embed=3D"false" = eclipse=3D"true" = />
= <frameworks = root=3D"User" embed=3D"false" eclipse=3D"true" = />
= <frameworks = root=3D"System" = embed=3D"false" = eclipse=3D"true" = />
= <frameworks = root=3D"Network" = embed=3D"false" = eclipse=3D"true" = />
= <classpath>
= <fileset dir=3D"Libraries">
= <include name=3D"*.jar" = />
= </fileset>
= <fileset = dir=3D"${wo.extensions}">
= <include name=3D"*.jar" = />
= </fileset>
= </classpath>
= </wocompile>
= </target>
</project>

Can you please suggest = something more? Last chance to save my New Year Eve.

Stavros

= --Apple-Mail=_2408B6D8-7FCD-407C-A34B-2547F9C98B3B--