You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Mark Combellack (JIRA)" <tu...@ws.apache.org> on 2008/04/15 15:33:04 UTC
[jira] Created: (TUSCANY-2228) Setting an Integer Property with a
non-number throws NumberFormatException - but for which Property?
Setting an Integer Property with a non-number throws NumberFormatException - but for which Property?
----------------------------------------------------------------------------------------------------
Key: TUSCANY-2228
URL: https://issues.apache.org/jira/browse/TUSCANY-2228
Project: Tuscany
Issue Type: Bug
Components: Java SCA Java Implementation Extension
Affects Versions: Java-SCA-Next
Environment: SVN trunk revision 648161
Linux
Reporter: Mark Combellack
Assignee: Mark Combellack
Fix For: Java-SCA-Next
If I define a Property on my Component as type int and then attempt to set the property value in the XML to a non-number (e.g. the String "Hello"), Tuscany will throw the following exception:
org.osoa.sca.ServiceRuntimeException: java.lang.NumberFormatException: For input string: ""
at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:264)
at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java:69)
<stack trace snipped here>
Caused by: java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:468)
at java.lang.Integer.parseInt(Integer.java:497)
at org.apache.tuscany.sca.databinding.impl.XSDDataTypeConverter.parseInt(XSDDataTypeConverter.java:771)
at org.apache.tuscany.sca.databinding.impl.SimpleTypeMapperImpl.toJavaObject(SimpleTypeMapperImpl.java:280)
at org.apache.tuscany.sca.implementation.java.injection.JavaPropertyValueObjectFactory$ObjectFactoryImpl.getInstance(JavaPropertyValueObjectFactory.java:223)
at org.apache.tuscany.sca.implementation.java.injection.FieldInjector.inject(FieldInjector.java:52)
at org.apache.tuscany.sca.implementation.java.context.ReflectiveInstanceFactory.newInstance(ReflectiveInstanceFactory.java:80)
at org.apache.tuscany.sca.implementation.java.invocation.JavaComponentContextProvider.createInstanceWrapper(JavaComponentContextProvider.java:101)
at org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationProvider.createInstanceWrapper(JavaImplementationProvider.java:203)
at org.apache.tuscany.sca.core.scope.AbstractScopeContainer.createInstanceWrapper(AbstractScopeContainer.java:65)
at org.apache.tuscany.sca.core.scope.CompositeScopeContainer.getWrapper(CompositeScopeContainer.java:52)
at org.apache.tuscany.sca.core.scope.CompositeScopeContainer.start(CompositeScopeContainer.java:71)
at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:540)
at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:476)
at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:529)
at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init(DefaultSCADomain.java:221)
at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:109)
at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:230)
The big problem with this exception is that it does not tell you which field is invalid
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org
[jira] Commented: (TUSCANY-2228) Setting an Integer Property with a
non-number throws NumberFormatException - but for which Property?
Posted by "Mark Combellack (JIRA)" <tu...@ws.apache.org>.
[ https://issues.apache.org/jira/browse/TUSCANY-2228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12589076#action_12589076 ]
Mark Combellack commented on TUSCANY-2228:
------------------------------------------
I've committed a fix to handle the extra exceptions in SVN revision 648251.
The exception now looks like:
org.apache.tuscany.sca.core.factory.ObjectCreationException: Failed to create instance for property intField with value
at org.apache.tuscany.sca.implementation.java.injection.JavaPropertyValueObjectFactory$ObjectFactoryImpl.getInstance(JavaPropertyValueObjectFactory.java:226)
<stack trace snipped here>
Caused by: java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:468)
at java.lang.Integer.parseInt(Integer.java:497)
at org.apache.tuscany.sca.databinding.impl.XSDDataTypeConverter.parseInt(XSDDataTypeConverter.java:771)
at org.apache.tuscany.sca.databinding.impl.SimpleTypeMapperImpl.toJavaObject(SimpleTypeMapperImpl.java:280)
at org.apache.tuscany.sca.implementation.java.injection.JavaPropertyValueObjectFactory$ObjectFactoryImpl.getInstance(JavaPropertyValueObjectFactory.java:224)
... 22 more
> Setting an Integer Property with a non-number throws NumberFormatException - but for which Property?
> ----------------------------------------------------------------------------------------------------
>
> Key: TUSCANY-2228
> URL: https://issues.apache.org/jira/browse/TUSCANY-2228
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Java Implementation Extension
> Affects Versions: Java-SCA-Next
> Environment: SVN trunk revision 648161
> Linux
> Reporter: Mark Combellack
> Assignee: Mark Combellack
> Fix For: Java-SCA-Next
>
>
> If I define a Property on my Component as type int and then attempt to set the property value in the XML to a non-number (e.g. the String "Hello"), Tuscany will throw the following exception:
> org.osoa.sca.ServiceRuntimeException: java.lang.NumberFormatException: For input string: ""
> at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:264)
> at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java:69)
> <stack trace snipped here>
> Caused by: java.lang.NumberFormatException: For input string: ""
> at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
> at java.lang.Integer.parseInt(Integer.java:468)
> at java.lang.Integer.parseInt(Integer.java:497)
> at org.apache.tuscany.sca.databinding.impl.XSDDataTypeConverter.parseInt(XSDDataTypeConverter.java:771)
> at org.apache.tuscany.sca.databinding.impl.SimpleTypeMapperImpl.toJavaObject(SimpleTypeMapperImpl.java:280)
> at org.apache.tuscany.sca.implementation.java.injection.JavaPropertyValueObjectFactory$ObjectFactoryImpl.getInstance(JavaPropertyValueObjectFactory.java:223)
> at org.apache.tuscany.sca.implementation.java.injection.FieldInjector.inject(FieldInjector.java:52)
> at org.apache.tuscany.sca.implementation.java.context.ReflectiveInstanceFactory.newInstance(ReflectiveInstanceFactory.java:80)
> at org.apache.tuscany.sca.implementation.java.invocation.JavaComponentContextProvider.createInstanceWrapper(JavaComponentContextProvider.java:101)
> at org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationProvider.createInstanceWrapper(JavaImplementationProvider.java:203)
> at org.apache.tuscany.sca.core.scope.AbstractScopeContainer.createInstanceWrapper(AbstractScopeContainer.java:65)
> at org.apache.tuscany.sca.core.scope.CompositeScopeContainer.getWrapper(CompositeScopeContainer.java:52)
> at org.apache.tuscany.sca.core.scope.CompositeScopeContainer.start(CompositeScopeContainer.java:71)
> at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:540)
> at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:476)
> at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:529)
> at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init(DefaultSCADomain.java:221)
> at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:109)
> at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:230)
> The big problem with this exception is that it does not tell you which field is invalid
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org
[jira] Commented: (TUSCANY-2228) Setting an Integer Property with a
non-number throws NumberFormatException - but for which Property?
Posted by "Mark Combellack (JIRA)" <tu...@ws.apache.org>.
[ https://issues.apache.org/jira/browse/TUSCANY-2228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12589075#action_12589075 ]
Mark Combellack commented on TUSCANY-2228:
------------------------------------------
The cause of this issue is that the class JavaPropertyValueObjectFactory in implementation-java-runtime calls the
simpleTypeMapper.toJavaObject() method which will throw NumberFormatException or IllegalArgumentException if the data it is attempting to convert is not valid.
The fix for this issue is to add try/catch block for these two exceptions and make sure the Property name is in the exception.
> Setting an Integer Property with a non-number throws NumberFormatException - but for which Property?
> ----------------------------------------------------------------------------------------------------
>
> Key: TUSCANY-2228
> URL: https://issues.apache.org/jira/browse/TUSCANY-2228
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Java Implementation Extension
> Affects Versions: Java-SCA-Next
> Environment: SVN trunk revision 648161
> Linux
> Reporter: Mark Combellack
> Assignee: Mark Combellack
> Fix For: Java-SCA-Next
>
>
> If I define a Property on my Component as type int and then attempt to set the property value in the XML to a non-number (e.g. the String "Hello"), Tuscany will throw the following exception:
> org.osoa.sca.ServiceRuntimeException: java.lang.NumberFormatException: For input string: ""
> at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:264)
> at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java:69)
> <stack trace snipped here>
> Caused by: java.lang.NumberFormatException: For input string: ""
> at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
> at java.lang.Integer.parseInt(Integer.java:468)
> at java.lang.Integer.parseInt(Integer.java:497)
> at org.apache.tuscany.sca.databinding.impl.XSDDataTypeConverter.parseInt(XSDDataTypeConverter.java:771)
> at org.apache.tuscany.sca.databinding.impl.SimpleTypeMapperImpl.toJavaObject(SimpleTypeMapperImpl.java:280)
> at org.apache.tuscany.sca.implementation.java.injection.JavaPropertyValueObjectFactory$ObjectFactoryImpl.getInstance(JavaPropertyValueObjectFactory.java:223)
> at org.apache.tuscany.sca.implementation.java.injection.FieldInjector.inject(FieldInjector.java:52)
> at org.apache.tuscany.sca.implementation.java.context.ReflectiveInstanceFactory.newInstance(ReflectiveInstanceFactory.java:80)
> at org.apache.tuscany.sca.implementation.java.invocation.JavaComponentContextProvider.createInstanceWrapper(JavaComponentContextProvider.java:101)
> at org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationProvider.createInstanceWrapper(JavaImplementationProvider.java:203)
> at org.apache.tuscany.sca.core.scope.AbstractScopeContainer.createInstanceWrapper(AbstractScopeContainer.java:65)
> at org.apache.tuscany.sca.core.scope.CompositeScopeContainer.getWrapper(CompositeScopeContainer.java:52)
> at org.apache.tuscany.sca.core.scope.CompositeScopeContainer.start(CompositeScopeContainer.java:71)
> at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:540)
> at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:476)
> at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:529)
> at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init(DefaultSCADomain.java:221)
> at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:109)
> at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:230)
> The big problem with this exception is that it does not tell you which field is invalid
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org
[jira] Resolved: (TUSCANY-2228) Setting an Integer Property with a
non-number throws NumberFormatException - but for which Property?
Posted by "Mark Combellack (JIRA)" <tu...@ws.apache.org>.
[ https://issues.apache.org/jira/browse/TUSCANY-2228?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mark Combellack resolved TUSCANY-2228.
--------------------------------------
Resolution: Fixed
Added unti test for JavaPropertyValueObjectFactory in SVN revision 648256.
Marking bug as fixed.
> Setting an Integer Property with a non-number throws NumberFormatException - but for which Property?
> ----------------------------------------------------------------------------------------------------
>
> Key: TUSCANY-2228
> URL: https://issues.apache.org/jira/browse/TUSCANY-2228
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Java Implementation Extension
> Affects Versions: Java-SCA-Next
> Environment: SVN trunk revision 648161
> Linux
> Reporter: Mark Combellack
> Assignee: Mark Combellack
> Fix For: Java-SCA-Next
>
>
> If I define a Property on my Component as type int and then attempt to set the property value in the XML to a non-number (e.g. the String "Hello"), Tuscany will throw the following exception:
> org.osoa.sca.ServiceRuntimeException: java.lang.NumberFormatException: For input string: ""
> at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:264)
> at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java:69)
> <stack trace snipped here>
> Caused by: java.lang.NumberFormatException: For input string: ""
> at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
> at java.lang.Integer.parseInt(Integer.java:468)
> at java.lang.Integer.parseInt(Integer.java:497)
> at org.apache.tuscany.sca.databinding.impl.XSDDataTypeConverter.parseInt(XSDDataTypeConverter.java:771)
> at org.apache.tuscany.sca.databinding.impl.SimpleTypeMapperImpl.toJavaObject(SimpleTypeMapperImpl.java:280)
> at org.apache.tuscany.sca.implementation.java.injection.JavaPropertyValueObjectFactory$ObjectFactoryImpl.getInstance(JavaPropertyValueObjectFactory.java:223)
> at org.apache.tuscany.sca.implementation.java.injection.FieldInjector.inject(FieldInjector.java:52)
> at org.apache.tuscany.sca.implementation.java.context.ReflectiveInstanceFactory.newInstance(ReflectiveInstanceFactory.java:80)
> at org.apache.tuscany.sca.implementation.java.invocation.JavaComponentContextProvider.createInstanceWrapper(JavaComponentContextProvider.java:101)
> at org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationProvider.createInstanceWrapper(JavaImplementationProvider.java:203)
> at org.apache.tuscany.sca.core.scope.AbstractScopeContainer.createInstanceWrapper(AbstractScopeContainer.java:65)
> at org.apache.tuscany.sca.core.scope.CompositeScopeContainer.getWrapper(CompositeScopeContainer.java:52)
> at org.apache.tuscany.sca.core.scope.CompositeScopeContainer.start(CompositeScopeContainer.java:71)
> at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:540)
> at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:476)
> at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(CompositeActivatorImpl.java:529)
> at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init(DefaultSCADomain.java:221)
> at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:109)
> at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:230)
> The big problem with this exception is that it does not tell you which field is invalid
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org