Status/Resolution/Reason: Closed/Deferred/DesignLimitation
Reporter/Name(from Bugbase): Jork Zijlstra / Jork Zijlstra (Jork Zijlstra)
Created: 11/26/2015
Components: Core Runtime
Versions: 10.0
Failure Type:
Found In Build/Fixed In Build: Final /
Priority/Frequency: Major / All users will encounter
Locale/System: English / Linux All
Vote Count: 0
Problem Description:
When creating a (private) method named '_binary" in a component it causes a runtime exception "argumentNotFound" or IllegalArgumentException: argument type mismatch. Although when looking at your own code you see that your calling your own _isBinary with the correct number off arguments and of they are of correct type.
After some debugging it looks like _isBinary is injected at runtime, but this is a _isBinary version of the CF core not your own created method.
Futhermore the illegalArgumentException is caused because the CF _isBinary seems to have the following signature _isBinary(string, binaryencoding).
So in short your own _isBinary method is overriden by the CF _isBinary version which might take different parameters.
Steps to Reproduce:
- create component
- create (private) method _isBinary
- call _isBinary at runtime
Actual Result:
An exception on of argument was nog found or argument type mismatch
Expected Result:
Your own created methods should not be overriden by cf versions
Any Workarounds:
Use a different name for your method
----------------------------- Additional Watson Details -----------------------------
Watson Bug ID: 4093045
External Customer Info:
External Company:
External Customer Name: Jork Zijlstra
External Customer Email:
External Test Config: My Hardware and Environment details:
Ubuntu 14.04, CF10,0,18,29633
Attachments:
- November 27, 2015 00:00:00: 1_isBinary.zip
- November 27, 2015 00:00:00: 2__Binary.zip
- November 27, 2015 00:00:00: 3_serversettings.pdf
Comments: