Return-Path: Delivered-To: apmail-cocoon-dev-archive@www.apache.org Received: (qmail 63556 invoked from network); 2 Nov 2005 18:11:58 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 2 Nov 2005 18:11:58 -0000 Received: (qmail 48252 invoked by uid 500); 2 Nov 2005 18:11:54 -0000 Delivered-To: apmail-cocoon-dev-archive@cocoon.apache.org Received: (qmail 48185 invoked by uid 500); 2 Nov 2005 18:11:54 -0000 Mailing-List: contact dev-help@cocoon.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@cocoon.apache.org List-Id: Delivered-To: mailing list dev@cocoon.apache.org Received: (qmail 48174 invoked by uid 99); 2 Nov 2005 18:11:53 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Nov 2005 10:11:53 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (asf.osuosl.org: local policy) Received: from [193.201.200.34] (HELO tuschin.blackcatnetworks.co.uk) (193.201.200.34) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Nov 2005 10:11:49 -0800 Received: from [87.194.16.95] (helo=[192.168.1.64]) by tuschin.blackcatnetworks.co.uk with asmtp (Exim 3.36 #1 (Debian)) id 1EXN58-0001g7-00 for ; Wed, 02 Nov 2005 18:11:30 +0000 Mime-Version: 1.0 (Apple Message framework v746.2) To: dev@cocoon.apache.org Message-Id: <83B9DE2F-0B79-40FA-A52A-36CB06CADCFA@apache.org> Content-Type: multipart/signed; micalg=sha1; boundary=Apple-Mail-14-176551001; protocol="application/pkcs7-signature" From: Jeremy Quinn Subject: [BLOCKER] SQLTransformer bug 1594 - cause found Date: Wed, 2 Nov 2005 18:11:29 +0000 X-Mailer: Apple Mail (2.746.2) X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N --Apple-Mail-14-176551001 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Hi All I have been hunting for the cause of this blocker: http://issues.apache.org/jira/browse/COCOON-1594 Whereby whitespace gets swallowed up in front of SQLTransformer substitution tags. The cause is in the o.a.c.transformation.helpers.TextRecorder class, line: 45 /** * @return Recorded text so far, trimmed. */ public String getText() { return this.buffer.toString().trim(); ^^^^^^^ } When this happens in the case of the SQLTransformer, the trailing space in the recorded text is a required part of the SQL statement being generated. i.e. (from the bug report) > The following code will fail: > > > SELECT id, name, description from department > LIMIT , sql:name="count"/> > > > After the values are substituted, the output is: > SELECT id, name, description from department > LIMITn,m > ... instead of > SELECT id, name, description from department > LIMIT n,m When this is run, with the debugger turned on, you get this message : DEBUG (2005-11-02) 17:43.17:351 [sitemap.transformer.sql.query] (/ bug) PoolThread-4/SQLTransformer.Query: Adding query part "SELECT id, name, description from department LIMIT" ^ missing space I can see two solutions to this bug : 1. remove the .trim() from the TextRecorder.getText() method, but I do not know if something else relies on this. 2. Treat SQLTransformer.startSubstituteValueElement (and probably startAncestorValueElement as well) as a special case, and always add a space to the preceding text. WDYT ? regards Jeremy --Apple-Mail-14-176551001 Content-Transfer-Encoding: base64 Content-Type: application/pkcs7-signature; name=smime.p7s Content-Disposition: attachment; filename=smime.p7s MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIGFjCCAs8w ggI4oAMCAQICAw1kvTANBgkqhkiG9w0BAQQFADBiMQswCQYDVQQGEwJaQTElMCMGA1UEChMcVGhh d3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVt YWlsIElzc3VpbmcgQ0EwHhcNMDQxMTA5MTc1ODA1WhcNMDUxMTA5MTc1ODA1WjBDMR8wHQYDVQQD ExZUaGF3dGUgRnJlZW1haWwgTWVtYmVyMSAwHgYJKoZIhvcNAQkBFhFqZXJlbXlAYXBhY2hlLm9y ZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANfbg5ZYnEmM8k0G2QBIBr3Yw0Fu9OhS cMpSk5wTWMKbR6u/tbgJc+N8sn7D0E0QRLK3Rbj/IE1MNJ9la2vww5E9zkFicqKAtbF0bVnwLoG8 McZ6iOqs9gN0An6foq2OiIyid/NwXixb48otrxM+nq/BNvErcg1bmlkxLt8W0trYwxgPi+Vkynz/ lJ5OHMenvrO+xbnks/b7IzABKwdA+yaRTbgUlaqJMZZv9qJX4eLBv2IJIoRqZ4/0EkKIsiPcSmR+ 4k+n6ATcssZ0VlK/PFug7PMYLW0aMwhf1gTz7I2ZfwdcsdrvR9jB6wqqYbhPP7uNIUWTYuUV1R4p GSVlUmsCAwEAAaMuMCwwHAYDVR0RBBUwE4ERamVyZW15QGFwYWNoZS5vcmcwDAYDVR0TAQH/BAIw ADANBgkqhkiG9w0BAQQFAAOBgQCa5J4EMMVWDhxeAxB5DKvDpoSm9LybimSfZxy0k3FiDb+3o2WV YxsEhPRpzwoGksZpqZSzoH/OglJBn+91zA8fSsseYnzuQ7N7yQBM5QWkGIPdKLX9rB91M/rAaeO0 MHaB+ngRFHwagelnJASFJdlT/wZnqXDlX97Jj4qa/LsUJzCCAz8wggKooAMCAQICAQ0wDQYJKoZI hvcNAQEFBQAwgdExCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcT CUNhcGUgVG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmlj YXRpb24gU2VydmljZXMgRGl2aXNpb24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFp bCBDQTErMCkGCSqGSIb3DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw0wMzA3 MTcwMDAwMDBaFw0xMzA3MTYyMzU5NTlaMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUg Q29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwg SXNzdWluZyBDQTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAxKY8VXNV+065yplaHmjAdQRw nd/p/6Me7L3N9VvyGna9fww6YfK/Uc4B1OVQCjDXAmNaLIkVcI7dyfArhVqqP3FWy688Cwfn8R+R NiQqE88r1fOCdz0Dviv+uxg+B79AgAJk16emu59l0cUqVIUPSAR/p7bRPGEEQB5kGXJgt/sCAwEA AaOBlDCBkTASBgNVHRMBAf8ECDAGAQH/AgEAMEMGA1UdHwQ8MDowOKA2oDSGMmh0dHA6Ly9jcmwu dGhhd3RlLmNvbS9UaGF3dGVQZXJzb25hbEZyZWVtYWlsQ0EuY3JsMAsGA1UdDwQEAwIBBjApBgNV HREEIjAgpB4wHDEaMBgGA1UEAxMRUHJpdmF0ZUxhYmVsMi0xMzgwDQYJKoZIhvcNAQEFBQADgYEA SIzRUIPqCy7MDaNmrGcPf6+svsIXoUOWlJ1/TCG4+DYfqi2fNi/A9BxQIJNwPP2t4WFiw9k6GX6E sZkbAMUaC4J0niVQlGLH2ydxVyWN3amcOY6MIE9lX5Xa9/eH1sYITq726jTlEBpbNU1341YheILc IRk13iSx0x1G/11fZU8xggLnMIIC4wIBATBpMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3 dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1h aWwgSXNzdWluZyBDQQIDDWS9MAkGBSsOAwIaBQCgggFTMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0B BwEwHAYJKoZIhvcNAQkFMQ8XDTA1MTEwMjE4MTEyOVowIwYJKoZIhvcNAQkEMRYEFDdWOdoNul+6 vr4oM0/1qraMWn4UMHgGCSsGAQQBgjcQBDFrMGkwYjELMAkGA1UEBhMCWkExJTAjBgNVBAoTHFRo YXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJzb25hbCBGcmVl bWFpbCBJc3N1aW5nIENBAgMNZL0wegYLKoZIhvcNAQkQAgsxa6BpMGIxCzAJBgNVBAYTAlpBMSUw IwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVy c29uYWwgRnJlZW1haWwgSXNzdWluZyBDQQIDDWS9MA0GCSqGSIb3DQEBAQUABIIBABjcss4IGjDz F+ywUSZ/t41dj98r5UIgdmaPcZ3pIUVfvAuGHDsa6kd4ZvEdJLJktOKA9kHxnPU5lRcE6YIOPVUz l3Du3NDlzo2j0N27pXyvmwQLebGj84DtbyEWq1z+GzRVf7MPc4Go4ndJq2ULoAMBAnW9E2SbaWFD K0jKaLl4mOIfGIx989arMWvxuTcOBeg091fH3wlX9rLEHRdnN06c0IO9lAX7F/cnHHGPcP5Va0yb /deGDAdu8sz1cCg60rJ+i80dQ4ZH7/PFYGF5XPzfnXJQCqIjN2BLiStnJEuzIIFZ66l3b0vSleLY Gj22voSiMbqRQ4X8xYNc3MzMMMAAAAAAAAA= --Apple-Mail-14-176551001--