X-CGP-ClamAV-Result: CLEAN X-VirusScanner: Niversoft's CGPClamav Helper v1.25a (ClamAV 0.103.8/26959) X-Junk-Score: 0 [] X-KAS-Score: 0 [] Return-Path: Received: from mail01.rucotec.ch ([65.21.159.64] verified) by post.selbstdenker.com (CommuniGate Pro SMTP 6.3.18) with ESMTPS id 30996389 for webobjects-dev@wocommunity.org; Tue, 04 Jul 2023 14:03:41 +0200 Received-SPF: pass receiver=post.selbstdenker.com; client-ip=65.21.159.64; envelope-from=markus.ruggiero@rucotec.ch Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 2D45868026 for ; Tue, 4 Jul 2023 14:03:16 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rucotec.ch; s=dkim; t=1688472198; h=from:subject:date:message-id:to:mime-version:content-type; bh=6JYzntl21nwbu5Ke3DZ40b2OyN8lZj8FlFX09H45GTk=; b=MfEpTaY0i01jeHKof+ZVM7cnV4Qy72e84CUlZU5AOB8PJ3i2waCtPMqRXl0En5OPq3/w/n pOY5HLFI2Ys1LoAGUVBze+ktrMi1sATJhf6sbF4IoQJDiR9kFYfrLcP57Rg8jazhg/C2BD IcbhcHMjPOGg1XwMDfNVN/6ltj7sQ4GF7G3VNYltIYQV3/TdQlfUmZiYMl4goT5eh+W55U 3vr1V0vGZxaSAmQa2LWwN4RvcGCg+yHB24qy0xLW5Cq3sZu59kx8ThrsPWFOs4R6VsrezZ tzK1em4f6k/Er0p1dWzRCvsed7MJOoYYA7gk4r6YuqZLZLN3nGPE0k68JK8B2A== From: "Markus Ruggiero (rucotec)" Content-Type: multipart/signed; boundary="Apple-Mail=_386529DD-DAD4-4D2E-96AD-6C4BCA18EA7F"; protocol="application/pkcs7-signature"; micalg=sha-256 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.600.7\)) Subject: Return to component from calling an external non-wo app Message-Id: <63EAC7C0-4A4A-4DBD-AB2A-7EA3286E6460@rucotec.ch> Date: Tue, 4 Jul 2023 14:03:04 +0200 To: WebObjects & WOnder Development X-Last-TLS-Session-Version: TLSv1.2 --Apple-Mail=_386529DD-DAD4-4D2E-96AD-6C4BCA18EA7F Content-Type: multipart/alternative; boundary="Apple-Mail=_A557FE88-FC3E-4FFA-A221-04823310C94C" --Apple-Mail=_A557FE88-FC3E-4FFA-A221-04823310C94C Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 I need to call an external app for some interactive stuff. The call to = that app allows to pass a URL that will be called upon the user is done = on the external site. Our user is woking inside a complex component and = eventually needs to go externally for some specific tasks. Going to said = external app happens with a POST request and a ton of XML in the request = body. I can do this, that=E2=80=99s all working. One item in the posted = XML is an (optional) return URL. How can I create this return URL so that the user transparently comes = back to where they left off? I also need to act on this (the user coming = back from the external site) to download info about what the user has = done over there. This downloading of the results is another XML posted = to the external site, their response however is then an XML which I need = to parse (that is not a problem).=20 I am looking for strategies and possible code snippets for such a = scenario, particularly the creation of the return URL. I want this to = kind of work like the user doing a reload on the current page (a.k.a. = return null). I was thinking of passing some parameter along with the = URL (?comingBack=3Dtrue) that will then trigger the request to get back = the data from the external site. This could be done in = appendToResponse() with checking for comingBack =3D=3D true. So my primary issue is how to create a URL for the current component = that has the same effect as =E2=80=9Creload=E2=80=9D (and mind you we = are inside a (WO)Session and cannot lose this context). Thanks for your help and ideas ---markus--- Markus Ruggiero rucotec GmbH web https://rucotec.ch Leonhardsberg 1 email markus.ruggiero@rucotec.ch 4051 Basel / Switzerland mobile +41 79 508 4701 --Apple-Mail=_A557FE88-FC3E-4FFA-A221-04823310C94C Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 I need to call = an external app for some interactive stuff. The call to that app allows = to pass a URL that will be called upon the user is done on the external = site. Our user is woking inside a complex component and eventually needs = to go externally for some specific tasks. Going to said external app = happens with a POST request and a ton of XML in the request body. I can = do this, that=E2=80=99s all working. One item in the posted XML is an = (optional) return URL.

How can I create this return = URL so that the user transparently comes back to where they left off? I = also need to act on this (the user coming back from the external site) = to download info about what the user has done over there. This = downloading of the results is another XML posted to the external site, = their response however is then an XML which I need to parse (that is not = a problem). 

I am looking for strategies = and possible code snippets for such a scenario, particularly the = creation of the return URL. I want this to kind of work like the user = doing a reload on the current page (a.k.a. return null). I = was thinking of passing some parameter along with the URL = (?comingBack=3Dtrue) that will then trigger the request to get back the = data from the external site. This could be done in appendToResponse() = with checking for comingBack =3D=3D true.

So my = primary issue is how to create a URL for the current component that has = the same effect as =E2=80=9Creload=E2=80=9D (and mind you we are inside = a (WO)Session and cannot lose this = context).

Thanks for your help and = ideas
---markus---


Markus = Ruggiero


rucotec GmbH              =           web https://rucotec.ch
Leonhardsberg 1         =           email markus.ruggiero@rucotec.ch
4051 Basel / Switzerland    =      mobile +41 79 508 4701

<= /div>
=






= --Apple-Mail=_A557FE88-FC3E-4FFA-A221-04823310C94C-- --Apple-Mail=_386529DD-DAD4-4D2E-96AD-6C4BCA18EA7F Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCCzow ggUiMIIECqADAgECAhEA+bJBRVU88Wt+/tk032YQpDANBgkqhkiG9w0BAQsFADCBljELMAkGA1UE BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG A1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVu dGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQTAeFw0yMjA1MTQwMDAwMDBaFw0yNTA1MTMyMzU5 NTlaMCsxKTAnBgkqhkiG9w0BCQEWGm1hcmt1cy5ydWdnaWVyb0BydWNvdGVjLmNoMIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmyWv+KHiux3seusiaMG6GkTnzpAtZAQoNEuUSF/NCltV 8vC5c5mSp3S9nwQwd9vsncR35LsmXWCxDFE/EsOPr8q/ulmuN2DFxar17CoQzR2WkOJ4hn60FjuS gXuQMW2UsdRBajEqaMtmPKmFV3KN4wLi9fQLzve5Psykv+da4TUI5QB1y/1d1F00co+k5Xq16xXG Mq2kBLRpo3+ykiLJHKx/1YVTDhhrT72jkcGcc6GjUINbtqV0Z84m3PC26eOUoSGIqKSOls8GnmQY AA/al1OPBI5AjCh+sxq9MCNtTs4EJW4+sMmZE4CRY/60odb++HxdsRuAwYdqfg5fjHPqvQIDAQAB o4IB0zCCAc8wHwYDVR0jBBgwFoAUCcDy/AvalNtf/ivfqJlCz8ngrQAwHQYDVR0OBBYEFNt3xL6+ uF93aKx7OyZ+5X0tJkOiMA4GA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQG CCsGAQUFBwMEBggrBgEFBQcDAjBABgNVHSAEOTA3MDUGDCsGAQQBsjEBAgEBATAlMCMGCCsGAQUF BwIBFhdodHRwczovL3NlY3RpZ28uY29tL0NQUzBaBgNVHR8EUzBRME+gTaBLhklodHRwOi8vY3Js LnNlY3RpZ28uY29tL1NlY3RpZ29SU0FDbGllbnRBdXRoZW50aWNhdGlvbmFuZFNlY3VyZUVtYWls Q0EuY3JsMIGKBggrBgEFBQcBAQR+MHwwVQYIKwYBBQUHMAKGSWh0dHA6Ly9jcnQuc2VjdGlnby5j b20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxDQS5jcnQwIwYI KwYBBQUHMAGGF2h0dHA6Ly9vY3NwLnNlY3RpZ28uY29tMCUGA1UdEQQeMByBGm1hcmt1cy5ydWdn aWVyb0BydWNvdGVjLmNoMA0GCSqGSIb3DQEBCwUAA4IBAQBbChLqbBr/EGVvqY3JhZltmRwUBagV XqgrWDgMk3xqkXlPVBucGuRq/wg2sCZBUVQFDXoIiyFrCjQy5A80F3fJ+H/dr8M4KT5hMrPSrsj9 dTQP9T7MnluDRuhma5+x9vSvMIttSD1EhkHJsSvGw0BH2BOrUsqQJP5k2bEa9j8faLZaJRUbQG0G zpZnLUrRbhnndW5OEdKa+F5x9lkWM/Lj0eiEdkYoJJPnD/JF3uqAn12U3FZI4yv+K6IxA9M0kn/M Vxm0AVEdYDsgIkbBI+BhS1QWsOxC4utrY3A2nfLtY0RrbcR7g8B4N/QbD657Wrb7i45485+yYZon cp6nqFwyMIIGEDCCA/igAwIBAgIQTZQsENQ74JQJxYEtOisGTzANBgkqhkiG9w0BAQwFADCBiDEL MAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4w HAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0EgQ2Vy dGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTgxMTAyMDAwMDAwWhcNMzAxMjMxMjM1OTU5WjCBljEL MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9y ZDEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQg QXV0aGVudGljYXRpb24gYW5kIFNlY3VyZSBFbWFpbCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAMo87ZQKQf/e+Ua56NY75tqSvysQTqoavIK9viYcKSoq0s2cUIE/bZQu85eoZ9X1 40qOTKl1HyLTJbazGl6nBEibivHbSuejQkq6uIgymiqvTcTlxZql19szfBxxo0Nm9l79L9S+TZNT EDygNfcXlkHKRhBhVFHdJDfqB6Mfi/Wlda43zYgo92yZOpCWjj2mz4tudN55/yE1+XvFnz5xsOFb me/SoY9WAa39uJORHtbC0x7C7aYivToxuIkEQXaumf05Vcf4RgHs+Yd+mwSTManRy6XcCFJE6k/L Ht3ndD3sA3If/JBz6OX2ZebtQdHnKav7Azf+bAhudg7PkFOTuRMCAwEAAaOCAWQwggFgMB8GA1Ud IwQYMBaAFFN5v1qqK0rPVIDh2JvAnfKyA2bLMB0GA1UdDgQWBBQJwPL8C9qU21/+K9+omULPyeCt ADAOBgNVHQ8BAf8EBAMCAYYwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHSUEFjAUBggrBgEFBQcD AgYIKwYBBQUHAwQwEQYDVR0gBAowCDAGBgRVHSAAMFAGA1UdHwRJMEcwRaBDoEGGP2h0dHA6Ly9j cmwudXNlcnRydXN0LmNvbS9VU0VSVHJ1c3RSU0FDZXJ0aWZpY2F0aW9uQXV0aG9yaXR5LmNybDB2 BggrBgEFBQcBAQRqMGgwPwYIKwYBBQUHMAKGM2h0dHA6Ly9jcnQudXNlcnRydXN0LmNvbS9VU0VS VHJ1c3RSU0FBZGRUcnVzdENBLmNydDAlBggrBgEFBQcwAYYZaHR0cDovL29jc3AudXNlcnRydXN0 LmNvbTANBgkqhkiG9w0BAQwFAAOCAgEAQUR1AKs5whX13o6VbTJxaIwA3RfXehwQOJDI47G9FzGR 87bjgrShfsbMIYdhqpFuSUKzPM1ZVPgNlT+9istp5UQNRsJiD4KLu+E2f102qxxvM3TEoGg65FWM 89YN5yFTvSB5PelcLGnCLwRfCX6iLPvGlh9j30lKzcT+mLO1NLGWMeK1w+vnKhav2VuQVHwpTf64 ZNnXUF8p+5JJpGtkUG/XfdJ5jR3YCq8H0OPZkNoVkDQ5CSSF8Co2AOlVEf32VBXglIrHQ3v9AAS0 yPo4Xl1FdXqGFe5TcDQSqXh3TbjugGnG+d9yZX3lB8bwc/Tn2FlIl7tPbDAL4jNdUNA7jGee+tAn TtlZ6bFz+CsWmCIb6j6lDFqkXVsp+3KyLTZGXq6F2nnBtN4t5jO3ZIj2gpIKHAYNBAWLG2Q2fG7B t2tPC8BLC9WIM90gbMhAmtMGquITn/2fORdsNmaV3z/sPKuIn8DvdEhmWVfh0fyYeqxGlTw0Rfwh BlakdYYrkDmdWC+XszE19GUi8K8plBNKcIvyg2omAdebrMIHiAHAOiczxX/aS5ABRVrNUDcjfvp4 hYbDOO6qHcfzy/uY0fO5ssebmHQREJJA3PpSgdVnLernF6pthJrGkNDPeUI05svqw1o5A2HcNzLO pklhNwZ+4uWYLcAi14ACHuVvJsmzNicxggPHMIIDwwIBATCBrDCBljELMAkGA1UEBhMCR0IxGzAZ BgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYGA1UEChMPU2Vj dGlnbyBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVudGljYXRpb24g YW5kIFNlY3VyZSBFbWFpbCBDQQIRAPmyQUVVPPFrfv7ZNN9mEKQwDQYJYIZIAWUDBAIBBQCgggHr MBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIzMDcwNDEyMDMwNFow LwYJKoZIhvcNAQkEMSIEIE+7ayXDXPbQd9Ks15+4CEaIg1LFKc2pCw4LOGg1w9C3MIG9BgkrBgEE AYI3EAQxga8wgawwgZYxCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIx EDAOBgNVBAcTB1NhbGZvcmQxGDAWBgNVBAoTD1NlY3RpZ28gTGltaXRlZDE+MDwGA1UEAxM1U2Vj dGlnbyBSU0EgQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBTZWN1cmUgRW1haWwgQ0ECEQD5skFF VTzxa37+2TTfZhCkMIG/BgsqhkiG9w0BCRACCzGBr6CBrDCBljELMAkGA1UEBhMCR0IxGzAZBgNV BAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYGA1UEChMPU2VjdGln byBMaW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVudGljYXRpb24gYW5k IFNlY3VyZSBFbWFpbCBDQQIRAPmyQUVVPPFrfv7ZNN9mEKQwDQYJKoZIhvcNAQELBQAEggEAjeld ZuDXivF8XSQ3TL0lSuGF+ayoRuxvLTEyPu0ma3IkPpKZMjq9MG+H3j+ERPoP3cO6v268r28vaXfy viz//IoRNdz61/mFWvVSG8BS4n8m9BDfBjuCBWfL9wBRDVAHg145Ordwq2zhH8bzHqePKI5l7dbz dQemK4mFcvNJxki0HD/Eb0nHOeShm3t4hoYYK0D7VGzDqKfXLUZyfwbe+PYSFLXKKuUASqj/pt4N qlqqaclDVVlOfATvpl9I01qVTqLPK2lUwyTNnNAk8AfmsoOzrevBJlHj57c0kruhARK+5EWpMd2z 866eV94ZeC3x1di+m2Nabv7bDYPAC2ngqwAAAAAAAA== --Apple-Mail=_386529DD-DAD4-4D2E-96AD-6C4BCA18EA7F--