Hi,

I've seen a couple of other discussion about this in the past, but didn't know 
if there's been any progress.  Anyways, I've encountered a 
java.lang.StackOverflowError when sending in a long attribute.  Here's the 
warning I'm getting:

Apr 8, 2008 10:59:58 AM org.restlet.util.Template match
WARNING: StackOverflowError exception encountered while matching this string : 
/result/c045d791-11b0-408e-8d60-b2f6ce6c117d,af3e28f4-2bdf-4b34-a74a-48f6c638a9b8,b242e13a-7083-45d6-a4db-5961883690db,a315b9cb-743c-422e-bb1b-bedfa93957bd,ac399b7f-5a2a-4ddc-8a7b-d1106e1e28f4,ffe736ef-5dbf-4204-a69c-b1599e012b75,1b876179-e897-4eb9-a5ae-b124fd69cbcb,b1c5abc4-b69c-4d5a-85fe-b320adab8f29,44efad37-ed0a-4bf0-80c8-55a82dfe89d3,bd43c7c4-0949-40a3-998b-b6cf0d895cc9,45b046c1-a509-4835-a801-c5bca0855d49,8260a9fd-9773-4803-8218-2de29082ef7a,2acd118a-5721-4aee-afcc-a28b3dd8bcbd,8943d432-a147-4393-afbf-5de3bbfb3f28,3db028ad-4f8c-4355-a7ca-ac4af7a712be,d00faab9-0c2d-4b5b-84bf-810e375ec38f,c8780a2a-a7be-458e-a6ef-9f73922b0ca7,16525506-0df4-453e-b930-d9fd46e08b72,a50839f2-e3b2-4604-86bf-646af2ca048d,5383406a-c566-455b-8725-2c81aba82db0,ae3ceaa9-a495-4311-8e65-4e83aa02b2ad,0cfc54f9-9852-451e-9856-a63689cbb4e3,2faaa074-b21c-4c40-a632-b5e8e84aa09a,ec4f38de-e0de-437e-9e3f-19db4576f177,185b9d55-237f-42b3-ba8a-bb005db09f2a,887ffc64-c190-439e-a9b2-261f55ea18e3,97683f00-151e-4508-8b77-5d34d1048843,1cfde617-ad79-4f81-bc30-bf017ecb5636,c4551d09-b558-40a1-96ca-eea503d72815,2fa39dc8-d375-42a6-bc11-e8cf4a91ceb8,e2198d2c-86c8-49e2-95c3-b6e88901cd68,f32600d5-1f27-4a4c-ae87-25caf0d91bdd,5156d109-aa69-4cf6-813c-7682b55d139e,b360f697-af9f-4e1e-8aff-e3d2fd510b0e,07f1db89-5b7f-4c9a-a177-003dffda8206,bc1103d2-7f0a-412e-9dc3-8c311c66c16b,2cefe92b-92ce-430f-89ee-8f2713afff2b,85cf0fb2-06d6-4d86-9146-4e8c951682b7,7acbaa77-d6bf-4271-a6b9-965ba5b83637,6ed9b90b-a533-4925-9019-282f27c32f86,4447c1b8-7333-4be1-ad37-9a552aed8243,d1e0593e-c340-4526-bc61-e98b74e2796b

I'm trying to call a GET at the result resource using a list of comma delimited 
uuids.  When it gets to the match(String formattedString) method and it calls 
getRegexPattern().match(formattedString) on the string above, it produces a 
Matcher with this regex: 
"/result/((?:[a-zA-Z0-9\\-\\.\\_\\~\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=\\:[EMAIL 
PROTECTED]|(?:\\%[0-9ABCDEFabcdef][0-9ABCDEFabcdef]))+)", and I get the stack 
overflow when matcher.lookingAt() is called.

I've tried just matching on the above string with the regex standalone, and it 
looks to be recursively calling pattern.match, and causing the 
StackOverflowError.

String s = 
"/result/c045d791-11b0-408e-8d60-b2f6ce6c117d,af3e28f4-2bdf-4b34-a74a-48f6c638a9b8,b242e13a-7083-45d6-a4db-5961883690db,a315b9cb-743c-422e-bb1b-bedfa93957bd,ac399b7f-5a2a-4ddc-8a7b-d1106e1e28f4,ffe736ef-5dbf-4204-a69c-b1599e012b75,1b876179-e897-4eb9-a5ae-b124fd69cbcb,b1c5abc4-b69c-4d5a-85fe-b320adab8f29,44efad37-ed0a-4bf0-80c8-55a82dfe89d3,bd43c7c4-0949-40a3-998b-b6cf0d895cc9,45b046c1-a509-4835-a801-c5bca0855d49,8260a9fd-9773-4803-8218-2de29082ef7a,2acd118a-5721-4aee-afcc-a28b3dd8bcbd,8943d432-a147-4393-afbf-5de3bbfb3f28,3db028ad-4f8c-4355-a7ca-ac4af7a712be,d00faab9-0c2d-4b5b-84bf-810e375ec38f,c8780a2a-a7be-458e-a6ef-9f73922b0ca7,16525506-0df4-453e-b930-d9fd46e08b72,a50839f2-e3b2-4604-86bf-646af2ca048d,5383406a-c566-455b-8725-2c81aba82db0,ae3ceaa9-a495-4311-8e65-4e83aa02b2ad,0cfc54f9-9852-451e-9856-a63689cbb4e3,2faaa074-b21c-4c40-a632-b5e8e84aa09a,ec4f38de-e0de-437e-9e3f-19db4576f177,185b9d55-237f-42b3-ba8a-bb005db09f2a,887ffc64-c190-439e-a9b2-261f55ea18e3,97683f00-151e-4508-8b77-5d34d1048843,1cfde617-ad79-4f81-bc30-bf017ecb5636,c4551d09-b558-40a1-96ca-eea503d72815,2fa39dc8-d375-42a6-bc11-e8cf4a91ceb8,e2198d2c-86c8-49e2-95c3-b6e88901cd68,f32600d5-1f27-4a4c-ae87-25caf0d91bdd,5156d109-aa69-4cf6-813c-7682b55d139e,b360f697-af9f-4e1e-8aff-e3d2fd510b0e,07f1db89-5b7f-4c9a-a177-003dffda8206,bc1103d2-7f0a-412e-9dc3-8c311c66c16b,2cefe92b-92ce-430f-89ee-8f2713afff2b,85cf0fb2-06d6-4d86-9146-4e8c951682b7,7acbaa77-d6bf-4271-a6b9-965ba5b83637,6ed9b90b-a533-4925-9019-282f27c32f86,4447c1b8-7333-4be1-ad37-9a552aed8243,d1e0593e-c340-4526-bc61-e98b74e2796b";
Pattern p = 
Pattern.compile("/result/((?:[a-zA-Z0-9\\-\\.\\_\\~\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=\\:[EMAIL
 PROTECTED]|(?:\\%[0-9ABCDEFabcdef][0-9ABCDEFabcdef]))+)");
Matcher m = p.matcher(s);
m.matches();
m.lookingAt();

Due to this problem, we're having to hack a solution of using the POST method 
for doing gets (as well as deletes) when operating on a large batch.  This 
works, but still a hack for what I presume to be a poorly generated regex 
that's preventing us for truly using a GET to do a get and a DELETE to do 
deletes.  I just wanted to bring this to people's attention, and to probe for 
any answers.  Has there been any fix for this, or will there be a fix for this 
in the future?  Thanks.

Sam

----------------------------------------------------------------------
CONFIDENTIALITY NOTICE This message and any included attachments are from 
Cerner Corporation and are intended only for the addressee. The information 
contained in this message is confidential and may constitute inside or 
non-public information under international, federal, or state securities laws. 
Unauthorized forwarding, printing, copying, distribution, or use of such 
information is strictly prohibited and may be unlawful. If you are not the 
addressee, please promptly delete this message and notify the sender of the 
delivery error by e-mail or you may call Cerner's corporate offices in Kansas 
City, Missouri, U.S.A at (+1) (816)221-1024.

Reply via email to