Hello, I am getting an error as follow:
Stopped running due to an exception. java.lang.ClassCastException: java.lang.String cannot be cast to com.mycompany.test.PojoEvent at SC.get(Unknown Source) at com.datatorrent.lib.db.jdbc.JdbcPOJOOutputOperator.setStatementParameters(JdbcPOJOOutputOperator.java:175) at com.datatorrent.lib.db.jdbc.AbstractJdbcTransactionableOutputOperator.processBatch(AbstractJdbcTransactionableOutputOperator.java:114) at com.datatorrent.lib.db.jdbc.AbstractJdbcTransactionableOutputOperator.endWindow(AbstractJdbcTransactionableOutputOperator.java:93) at com.datatorrent.stram.engine.GenericNode.processEndWindow(GenericNode.java:145) at com.datatorrent.stram.engine.GenericNode.run(GenericNode.java:351) at com.datatorrent.stram.engine.StreamingContainer$2.run(StreamingContainer.java:1388) I am not sure where to check the cast mismatch. I am inserting a value in the database. Thank You, Jaikit Jilka ----- Original Message ----- From: "Pradeep A. Dalvi" <p...@apache.org> To: "users" <users@apex.apache.org> Sent: Friday, June 24, 2016 4:45:18 PM Subject: Re: Jdbcoutputoperator implementation What are errors/exceptions seen in JdbcOutput container logs? Are you setting Context.PortContext.TUPLE_CLASS to POJO class being used? -- prad On Fri, Jun 24, 2016 at 2:13 PM, Jaikit Jilka <jji...@leadferret.com> wrote: > Hello, > > I resolved that error and now I can launch the application, But now the > container which has jdbcoperator is getting killed. I am attaching the dt.log > file of container which is running but does not have any operator. > > Thank You, > > Jaikit Jilka > > ----- Original Message ----- > From: "Pradeep A. Dalvi" <p...@apache.org> > To: "users" <users@apex.apache.org> > Sent: Friday, June 24, 2016 11:41:47 AM > Subject: Re: Jdbcoutputoperator implementation > > Yes, because it is not yet released. Compile & install latest malhar > in local ~/.m2 directory. > For that, git clone Malhar library repository. And do 'mvn clean > install' in that malhar clone. > > On Fri, Jun 24, 2016 at 11:31 AM, Jaikit Jilka <jji...@leadferret.com> wrote: >> Hello, >> >> When I change my malher version in POM.xml to the latest i.e 3.5.0-SNAPSHOT >> it gives me an build time error : Failure to find >> org.apache.apex:malhar-library:jar:3.5.0-SNAPSHOT in >> https://www.datatorrent.com/maven/content/repositories/snapshots/. >> >> Thank You, >> >> Jaikit Jilka >> >> ----- Original Message ----- >> From: "Pradeep A. Dalvi" <p...@apache.org> >> To: "users" <users@apex.apache.org> >> Sent: Friday, June 24, 2016 11:13:42 AM >> Subject: Re: Jdbcoutputoperator implementation >> >> This issue was in 3.4 malhar and fixed later on. Fix is present in >> master branch. You can use latest malhar. >> For reference: >> https://github.com/apache/apex-malhar/blob/master/library/src/main/java/com/datatorrent/lib/db/jdbc/AbstractJdbcTransactionableOutputOperator.java#L142 >> >> On Fri, Jun 24, 2016 at 10:59 AM, Jaikit Jilka <jji...@leadferret.com> wrote: >>> Hello, >>> >>> I am setting UpdateCommand to empty string from properties.xml file still I >>> am getting the same error >>> >>> <property> >>> >>> <name>dt.application.MyWordCountApplication.operator.JdbcOutput.prop.setupdateCommand</name> >>> <value> </value> >>> </property> >>> >>> error: >>> >>> An error occurred trying to launch the application. Server message: >>> javax.validation.ConstraintViolationException: Operator JdbcOutput violates >>> constraints >>> [ConstraintViolationImpl{rootBean=JdbcPOJOOutputOperator{name=null}, >>> propertyPath='updateCommand', message='may not be null', >>> leafBean=JdbcPOJOOutputOperator{name=null}, value=null}] at >>> com.datatorrent.stram.plan.logical.LogicalPlan.validate(LogicalPlan.java:1680) >>> at com.datatorrent.stram.StramClient.<init>(StramClient.java:161) at >>> com.datatorrent.stram.client.StramAppLauncher.launchApp(StramAppLauncher.java:509) >>> at com.datatorrent.stram.cli.DTCli$LaunchCommand.execute(DTCli.java:2050) >>> at com.datatorrent.stram.cli.DTCli.launchAppPackage(DTCli.java:3456) at >>> com.datatorrent.stram.cli.DTCli.access$7100(DTCli.java:106) at >>> com.datatorrent.stram.cli.DTCli$LaunchCommand.execute(DTCli.java:1895) at >>> com.datatorrent.stram.cli.DTCli$3.run(DTCli.java:1449) >>> >>> Thank You, >>> >>> Jaikit Jilka >>> >>> ----- Original Message ----- >>> From: "Munagala Ramanath" <r...@datatorrent.com> >>> To: "users" <users@apex.apache.org> >>> Sent: Thursday, June 23, 2016 3:32:42 PM >>> Subject: Re: Jdbcoutputoperator implementation >>> >>> Please look at: >>> >>> http://docs.datatorrent.com/beginner/ and >>> http://docs.datatorrent.com/application_packages/ >>> >>> for examples on how to set properties from XML files. >>> >>> Ram >>> >>> On Thu, Jun 23, 2016 at 3:25 PM, Jaikit Jilka <jji...@leadferret.com> wrote: >>> >>>> Hello, >>>> >>>> How to pass an empty string for updatecommand in properties.xml. >>>> When I change my malhar version to 3.5.0-SNAPSHOT it gives me a complie >>>> time error -Failure to find >>>> org.apache.apex:malhar-library:jar:3.5.0-SNAPSHOT in >>>> https://www.datatorrent.com/maven/content/repositories/snapshots/ >>>> >>>> Thank You, >>>> >>>> Jaikit Jilka >>>> >>>> ----- Original Message ----- >>>> From: "Pradeep A. Dalvi" <p...@apache.org> >>>> To: "users" <users@apex.apache.org> >>>> Sent: Thursday, June 23, 2016 12:43:40 PM >>>> Subject: Re: Jdbcoutputoperator implementation >>>> >>>> Hi Jaikit, >>>> >>>> This constraint violation exception was enforced from >>>> AbstractJdbcTransactionableOutputOperator. In 3.3/3.4 malhar library, >>>> updateCommand parameter has constraint set to @NotNull on getter >>>> method. >>>> >>>> You could do either of following to solve this: >>>> 1. Set updateCommand from properties.xml to empty string >>>> 2. Use master branch of Malhar >>>> 3. Remove @NotNull on getUpdateCommand in >>>> AbstractJdbcTransactionableOutputOperator >>>> >>>> Cheers, >>>> Pradeep A. Dalvi >>>> >>>> On Thu, Jun 23, 2016 at 11:36 AM, Jaikit Jilka <jji...@leadferret.com> >>>> wrote: >>>> > Hi Devendra, >>>> > >>>> > I tried to run your application. I followed all steps mentioned but I am >>>> getting following error. >>>> > >>>> > An error occurred trying to launch the application. Server message: >>>> javax.validation.ConstraintViolationException: Operator JdbcOutput violates >>>> constraints >>>> [ConstraintViolationImpl{rootBean=JdbcPOJOOutputOperator{name=null}, >>>> propertyPath='updateCommand', message='may not be null', >>>> leafBean=JdbcPOJOOutputOperator{name=null}, value=null}] at >>>> com.datatorrent.stram.plan.logical.LogicalPlan.validate(LogicalPlan.java:1680) >>>> at com.datatorrent.stram.StramClient.<init>(StramClient.java:161) at >>>> com.datatorrent.stram.client.StramAppLauncher.launchApp(StramAppLauncher.java:509) >>>> at com.datatorrent.stram.cli.DTCli$LaunchCommand.execute(DTCli.java:2050) >>>> at com.datatorrent.stram.cli.DTCli.launchAppPackage(DTCli.java:3456) at >>>> com.datatorrent.stram.cli.DTCli.access$7100(DTCli.java:106) at >>>> com.datatorrent.stram.cli.DTCli$LaunchCommand.execute(DTCli.java:1895) at >>>> com.datatorrent.stram.cli.DTCli$3.run(DTCli.java:1449) >>>> > >>>> > Thank you, >>>> > >>>> > Jaikit Jilka >>>> > >>>> > ----- Original Message ----- >>>> > From: "Devendra Tagare" <devend...@datatorrent.com> >>>> > To: "users" <users@apex.apache.org> >>>> > Sent: Thursday, June 23, 2016 10:32:17 AM >>>> > Subject: Re: Jdbcoutputoperator implementation >>>> > >>>> > Hi Jalkit, >>>> > >>>> > The JdbcPOJOOutputOperator is being configured with the >>>> > JdbcTransactionalStore which requires an additional dt_meta table. >>>> > >>>> > The table schema is here - >>>> > >>>> https://github.com/devtagare/examples/blob/SPOI-8251/tutorials/jdbcToJdbc/src/test/resources/example.sql >>>> > >>>> > You can find an example application which uses the JdbcPOJOOutputOperator >>>> > here - >>>> > >>>> https://github.com/devtagare/examples/tree/SPOI-8251/tutorials/jdbcToJdbc >>>> > >>>> > Thanks, >>>> > Dev >>>> > >>>> > On Thu, Jun 23, 2016 at 10:17 AM, Jaikit Jilka <jji...@leadferret.com> >>>> > wrote: >>>> > >>>> >> Hello, >>>> >> >>>> >> I am currently working on an application which simply read data from >>>> .txt >>>> >> file and slpits the words and inserts them into mysql. But I am getting >>>> >> error. I am using jdbcpojooutputoperator from malhar library. But I am >>>> >> getting an error on ActiveFieldInfos which says it is protected in >>>> >> jdbcpojoinputoperator and also I do not know what to do in >>>> Application.java >>>> >> file. I am attaching both the file here. Kindly help me resolve the >>>> issue. >>>> >> >>>> >> Thank You, >>>> >> >>>> >> Jaikit Jilka >>>>