Copy link to clipboard
Copied
I have found that when I call my web service (CFINVOKE) and it has more than 27 rows of data to return, it crashes.
Here is the error message that is produced in this situation:
Cannot perform web service invocation test.
The fault returned when invoking the web service operation is:
AxisFault
faultCode: {http://xml.apache.org/axis/}HTTP
faultSubcode:
faultString: (500)The web service operation caused an invocation exception.
faultActor:
faultNode:
faultDetail:
{}:return code: 500
{http://xml.apache.org/axis/}HttpErrorCode:500
If I remove some of the returned fields, I can get a higher number of records before it crashes.
That leads me to believe that there is a limit on how much data can be returned by a web service.
Does anyone know what that limit is? Are there ways around this data limit?
Copy link to clipboard
Copied
What version CF are you running? There is a Post parameter limit not sure if it should effect webservices though. See: http://www.cutterscrossing.com/index.cfm/2012/3/27/ColdFusion-Security-Hotfix-and-Big-Forms
Copy link to clipboard
Copied
I am running ColdFusion Standard 9,0,1,274733 running on Windows Server 2008.
Copy link to clipboard
Copied
I have solved the issue, but still puzzled by the behavior.
Here is how I discovered the problem:
I have done more testing and have come up with a very strange discovery. The problem is not a matter of pushing too much data through the web service.
The problem resides with sending a particular record through the web service. More specifically, a particular field (of type text) within a particular distinct record.
If I skip that record, it works.
If I convert that field from text to varchar, it works.
If I bypass the web service and do a direct CFQUERY call, it works.
If I include this trouble record, leave the trouble field untouched, and pull the data through the web service; it breaks.
How strange is that!
Here is how I fixed it:
It turned out there was some kind of hidden special character embedded in the data. It was not visible, but when pasted into a text editor was displayed as a space. After going through the text character by character, I was able to get rid of it.
Now the web service call works reliably.
Who would have through that an invisible special character in a text field would break a web service.