No, the version is ok.
The error is btw really strange. I can remember we had this issue before but
I am not sure how to solve it.
A workaround could be:
...
<beans ...>
<file:poller service="brockhaus:inbox"
endpoint="endpoint"
targetService="brockhaus:transformer"
targetUri="operation:http://brockhaus-
gruppe.de/products/ProductTransformerService/process"
file="file:///home/smx/input/products/"
deleteFile="true"
recursive="true"
period="10000"
filter="#XMLFilter" />
<bean id="XMLFilter" class="org.apache.commons.io.filefilter.WildcardFilter">
<constructor-arg value="*.xml" />
</bean>
</beans>
--
Am Dienstag 23 September 2008 15:35:21 schrieb steff aka sid:
> Hm don't really works during deployment I got following exception:
> Caused by: org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name 'org.apache.servicemix.file.FilePollerEndpoint'
> defined in file
> [/home/smx/apache-servicemix-3.2.2/data/smx/service-assemblies/BrockhausPro
>ductsAssembly/version_1/sus/servicemix-file/BrockhausProductsInbox/xbean.xml
>]: Error setting property values; nested exception is
> org.springframework.beans.NotWritablePropertyException: Invalid property
> 'property' of bean class [org.apache.servicemix.file.FilePollerEndpoint]:
> 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?
>
> My configuration was:
> <file:poller service="brockhaus:inbox" endpoint="endpoint"
> targetService="brockhaus:transformer"
>
> targetUri="operation:http://brockhaus-gruppe.de/products/ProductTransformer
>Service/process" file="file:///home/smx/input/products/" deleteFile="true"
> recursive="true" period="10000">
> <property name="filter">
> <bean class="org.apache.commons.io.filefilter.WildcardFilter">
> <constructor-arg value="*.xml" />
> </bean>
> </property>
> </file:poller>
> And in the pom I added:
> <dependency>
> <groupId>commons-io</groupId>
> <artifactId>commons-io</artifactId>
> <version>1.4</version>
> </dependency>
>
> is there a specific version of commons-io to use?
>
> Regards
> /Steffen
>
> steff aka sid wrote:
> > Ok,
> > I've read about that but from root directory my solution works so I don't
> > changed it. Maybe this works better with recursion. Thank you.
> >
> > Regards
> > /Steffen
> >
> > lhe77 wrote:
> >> Actually I never wrote my own filters and in your case it's not needed
> >> to write
> >> your own filter because you can use the predefined WildcardFilter from
> >> commons.io lib.
> >>
> >> Just add the dependency to your su's pom.xml and have something like the
> >> below:
> >>
> >>
> >> <f:poller
> >> service="my:filePoller"
> >> endpoint="pollerEndpoint"
> >> autoCreateDirectory="true"
> >> file="/home/user/myinput/"
> >> targetService="..."
> >> targetOperation="..."
> >> period="10000"
> >> recursive="true">
> >>
> >> <property name="filter">
> >> <bean class="org.apache.commons.io.filefilter.WildcardFilter">
> >> <constructor-arg value="*.xml" />
> >> </bean>
> >> </property>
> >>
> >> </f:poller>
> >>
> >> Lars
> >>
> >> Am Dienstag 23 September 2008 14:50:16 schrieb steff aka sid:
> >>> No, thats not enough :) you have to read the contents of the directory
> >>> and
> >>> to check them e.g. with pathname.listFiles() The problem is that it is
> >>> not
> >>> possible. To get a result for each file... but I will try it maybe it
> >>> works
> >>> as asspected.
> >>>
> >>> Regards
> >>> /Steffen
> >>>
> >>> lhe77 wrote:
> >>> > public class XMLFilter implements FileFilter {
> >>> >
> >>> > public static String XML_FILEEXTENSION = ".xml";
> >>> >
> >>> > public boolean accept(File pathname) {
> >>> >
> >>> > if (pathname.isDirectory() ||
> >>> > (pathname.isFile() &&
> >>> > strFilename.endsWith(XML_FILEEXTENSION))
> >>> > ) {
> >>> > return true;
> >>> > }
> >>> > return false;
> >>> > }
> >>> > }
> >>> >
> >>> > should do the trick.
> >>> >
> >>> > Lars
> >>> >
> >>> > Am Dienstag 23 September 2008 14:38:13 schrieb steff aka sid:
> >>> >> public class XMLFilter implements FileFilter {
> >>> >>
> >>> >> public static String XML_FILEEXTENSION = ".xml";
> >>> >>
> >>> >> public boolean accept(File pathname) {
> >>> >> System.out.println(pathname);
> >>> >> String strFilename = pathname.getName();
> >>> >> if (strFilename.endsWith(XML_FILEEXTENSION)) {
> >>> >> return true;
> >>> >> }
> >>> >> return false;
> >>> >> }
> >>> >> }
> >>>
> >>> -----
> >>> Brockhaus GmbH
> >>> COMPETITIVE THROUGH KNOWLEDGE
> >>>
> >>> Web: http://www.brockhaus-gruppe.de www.brockhaus-gruppe.de /
> >>> http://www.brockhaus-group.com www.brockhaus-group.com
>
> -----
> Brockhaus GmbH
> COMPETITIVE THROUGH KNOWLEDGE
>
> Web: http://www.brockhaus-gruppe.de www.brockhaus-gruppe.de /
> http://www.brockhaus-group.com www.brockhaus-group.com