History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: SM-1377
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Unassigned
Reporter: Luis Avila
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
ServiceMix

servicemix-file endpoint error

Created: 29/May/08 05:52 PM   Updated: 16/Jul/08 09:04 AM
Component/s: servicemix-file
Affects Version/s: 3.2.1
Fix Version/s: 3.3, 3.2.2

Time Tracking:
Not Specified

Environment: Linux


 Description  « Hide
Trying to configure a servicemix file sender endpoint to process a binary file from the maven archetype. The examples and the archetypes suggest to configure the marshaler property. The command mvn install compile without problems, but during the deployment of the service assembly in the container, an exception occurs.

xbean.xml file:

<?xml version="1.0" encoding="UTF-8"?>
<!--

Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

-->
<beans xmlns:file="http://servicemix.apache.org/file/1.0"
xmlns:sm="http://servicemix.apache.org/config/1.0"
xmlns:tms="http://localhost/servicioAviso"
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://servicemix.apache.org/file/1.0 http://servicemix.apache.org/schema/servicemix-file-3.2.2-SNAPSHOT.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

<file:sender service="tms:fileDeposit"
endpoint="fileDeposit"
directory="file:/home/knight/desarrollo/test">

<property name="marshaler">
<bean class="org.apache.servicemix.components.util.BinaryFileMarshaler" />
</property>

</file:sender>

</beans>

And the Exception Servicemix throws during deployment

<loc-message>org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.apache.servicemix.file.FileSenderEndpoint' defined in file [/home/knight/downloads/apache-servicemix-3.2.1/data/smx/service-assemblies/todoMercadoServices-sa/version_7/sus/servicemix-file/todomercadoImg-file-su/xbean.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'property' of bean class [org.apache.servicemix.file.FileSenderEndpoint]: Bean property 'property' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?</loc-message>
<stack-trace><![CDATA[org.apache.xbean.kernel.ServiceRegistrationException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.apache.servicemix.file.FileSenderEndpoint' defined in file [/home/knight/downloads/apache-servicemix-3.2.1/data/smx/service-assemblies/todoMercadoServices-sa/version_7/sus/servicemix-file/todomercadoImg-file-su/xbean.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'property' of bean class [org.apache.servicemix.file.FileSenderEndpoint]: Bean property 'property' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
at org.apache.xbean.kernel.standard.ServiceManagerRegistry.registerService(ServiceManagerRegistry.java:424)
at org.apache.xbean.kernel.standard.StandardKernel.registerService(StandardKernel.java:220)
at org.apache.xbean.server.spring.loader.SpringLoader.load(SpringLoader.java:152)
at org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:83)
at org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUnitManager.java:88)
at org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServiceUnitManager.java:69)
at org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:508)
at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:350)
at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:253)
at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateExternalArchive(AutoDeploymentService.java:201)
at org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(JBIContainer.java:476)
at org.apache.servicemix.jbi.container.JBIContainer.updateExternalArchive(JBIContainer.java:486)
at org.apache.servicemix.jbi.framework.AdminCommandsService.deployServiceAssembly(AdminCommandsService.java:209)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
at org.apache.servicemix.jbi.management.BaseStandardMBean.invoke(BaseStandardMBean.java:323)
at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1408)
at javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:81)
at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1245)
at java.security.AccessController.doPrivileged(Native Method)
at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1348)
at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:782)
at sun.reflect.GeneratedMethodAccessor73.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
at java.lang.Thread.run(Thread.java:595)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.apache.servicemix.file.FileSenderEndpoint' defined in file [/home/knight/downloads/apache-servicemix-3.2.1/data/smx/service-assemblies/todoMercadoServices-sa/version_7/sus/servicemix-file/todomercadoImg-file-su/xbean.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'property' of bean class [org.apache.servicemix.file.FileSenderEndpoint]: Bean property 'property' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1129)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:861)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:421)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:156)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:287)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
at org.apache.xbean.server.spring.configuration.SpringConfiguration.<init>(SpringConfiguration.java:63)
at org.apache.xbean.server.spring.configuration.SpringConfigurationServiceFactory.createService(SpringConfigurationServiceFactory.java:106)
at org.apache.xbean.kernel.standard.ServiceManager.start(ServiceManager.java:420)
at org.apache.xbean.kernel.standard.ServiceManager.initialize(ServiceManager.java:200)
at org.apache.xbean.kernel.standard.RegistryFutureTask$RegisterCallable.call(RegistryFutureTask.java:110)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at org.apache.xbean.kernel.standard.ServiceManagerRegistry.registerService(ServiceManagerRegistry.java:409)
... 38 more
Caused by: org.springframework.beans.NotWritablePropertyException: Invalid property 'property' of bean class [org.apache.servicemix.file.FileSenderEndpoint]: Bean property 'property' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:793)
at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:645)
at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:78)
at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:59)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1126)



 All   Comments   Work Log   Change History   Subversion Commits   FishEye   Crucible      Sort Order: Ascending order - Click to sort in descending order
Oleg Atamanenko - 20/Jun/08 12:36 AM - edited
I can confirm this bug on Windows too.

But I have found two workarounds:

1) Remove from declaration xmlns="http://www.springframework.org/schema/beans"

2) Declare Spring Beans namespace as xmlns:beans="http://www.springframework.org/schema/beans"
and use it like this;

<beans:bean
name="senderFileMarshaler"
class="org.apache.servicemix.components.util.SimpleFlatFileMarshaler">
<property name="fileName" ref="fileNameExpression" />
</beans:bean>


Guillaume Nodet - 03/Jul/08 12:18 PM
The issue has been fixed in xbean 3.4.3-SNAPSHOT, so we should close this issue when we've upgraded to this version.

Guillaume Nodet - 16/Jul/08 09:04 AM
This issue should be solved now that we have upgraded to xbean 3.4.3