Java Camel salesforce Sobject错误
我正在尝试使用上的代码示例学习camel salesforce。我能够完成大部分代码(因为我一直在阅读其他培训材料)。但当我进入执行部分时,它失败了。教程代码/配置非常简单,但是在运行时由于java.lang.ClassNotFoundException错误而失败 我做的第一步Java Camel salesforce Sobject错误,java,salesforce,apache-camel,Java,Salesforce,Apache Camel,我正在尝试使用上的代码示例学习camel salesforce。我能够完成大部分代码(因为我一直在阅读其他培训材料)。但当我进入执行部分时,它失败了。教程代码/配置非常简单,但是在运行时由于java.lang.ClassNotFoundException错误而失败 我做的第一步 原始git代码不起作用(mvn安装失败,错误为 依赖关系问题) 因此,我更新了POM use camel版本2.16.2(来自2.12.0.redhat-610394),并删除了fusesource.org存储库引用 M
{message:'Error processing query: [0] "SObject class not found org.apache.camel.salesforce.dto.Account.class, org.apache.camel.salesforce.dto.Account.class"',statusCode:0}
at org.apache.camel.component.salesforce.internal.processor.AbstractRestProcessor.process(AbstractRestProcessor.java:157)
at org.apache.camel.component.salesforce.SalesforceProducer.process(SalesforceProducer.java:100)
at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:141)
at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)
at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)
at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:190)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:121)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:83)
at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:190)
at org.apache.camel.component.timer.TimerConsumer.sendTimerExchange(TimerConsumer.java:165)
at org.apache.camel.component.timer.TimerConsumer$1.run(TimerConsumer.java:73)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Caused by: {message:'SObject class not found org.apache.camel.salesforce.dto.Account.class, org.apache.camel.salesforce.dto.Account.class',statusCode:0}
at org.apache.camel.component.salesforce.internal.processor.AbstractRestProcessor.setResponseClass(AbstractRestProcessor.java:666)
at org.apache.camel.component.salesforce.internal.processor.AbstractRestProcessor.processQuery(AbstractRestProcessor.java:450)
at org.apache.camel.component.salesforce.internal.processor.AbstractRestProcessor.process(AbstractRestProcessor.java:142)
... 12 more
Caused by: java.lang.ClassNotFoundException: org.apache.camel.salesforce.dto.Account.class
at org.apache.camel.impl.DefaultClassResolver.resolveMandatoryClass(DefaultClassResolver.java:80)
at org.apache.camel.component.salesforce.internal.processor.AbstractRestProcessor.setResponseClass(AbstractRestProcessor.java:663)
... 14 more
4.0.0
org.blogdemo
骆驼泉销售队
罐子
1.0.0-SNAPSHOT
骆驼泉之路
http://www.myorganization.org
UTF-8
UTF-8
2.16.2
2.15.1.redhat-621084
org.apache.camel
驼芯
${camel版本}
org.apache.camel
骆驼泉
${camel版本}
org.apache.camel
骆驼销售队伍
${camel版本}
org.slf4j
slf4j api
1.7.5
org.slf4j
slf4j-log4j12
1.7.5
log4j
log4j
1.2.17
org.apache.camel
驼峰试验弹簧
${camel版本}
测试
安装
org.apache.maven.plugins
maven编译器插件
2.5.1
1.6
1.6
org.apache.maven.plugins
maven资源插件
2.6
UTF-8
org.apache.camel
驼峰maven插件
${camel版本}
org.apache.camel.maven
camel salesforce maven插件
${camel版本}
UTF-8
UTF-8
2.16.0
release.redhat.com
红帽发布库
https://maven.repository.redhat.com/ga/
假的
真的
release.fusesource.org
FuseSource发布存储库
http://repo.fusesource.com/nexus/content/repositories/releases
假的
真的
ea.fusesource.org
FuseSource社区早期访问发布库
http://repo.fusesource.com/nexus/content/groups/ea
假的
真的
snapshot.fusesource.org
FuseSource快照存储库
http://repo.fusesource.com/nexus/content/repositories/snapshots
真的
假的
release.redhat.com
红帽发布库
https://maven.repository.redhat.com/ga/
假的
真的
release.fusesource.org
FuseSource发布存储库
http://repo.fusesource.com/nexus/content/repositories/releases
假的
真的
ea.fusesource.org
FuseSource社区早期访问发布库
http://repo.fusesource.com/nexus/content/groups/ea
假的
真的
snapshot.fusesource.org
FuseSource快照存储库
http://repo.fusesource.com/nexus/content/repositories/snapshots
真的
假的
我最近也遇到了同样的问题,结果发现我遗漏了一个简单的步骤
自动生成所有Salesforce类后,您必须将它们从org文件夹移动或复制到src/main/java文件夹。很抱歉,我忘了包含修改过的POM。您可以使用
outputDirectory
属性将生成的DTO放置在您喜欢的位置。您还可以使用packageName
属性将命名与项目集成。可在README.md
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<org.apache.camel.version>2.16.0</org.apache.camel.version>
</properties>
<repositories>
<repository>
<id>release.redhat.com</id>
<name>Red Hat Release Repository</name>
<url>https://maven.repository.redhat.com/ga/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
<repository>
<id>release.fusesource.org</id>
<name>FuseSource Release Repository</name>
<url>http://repo.fusesource.com/nexus/content/repositories/releases</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
<repository>
<id>ea.fusesource.org</id>
<name>FuseSource Community Early Access Release Repository</name>
<url>http://repo.fusesource.com/nexus/content/groups/ea</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
<repository>
<id>snapshot.fusesource.org</id>
<name>FuseSource Snapshot Repository</name>
<url>http://repo.fusesource.com/nexus/content/repositories/snapshots</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>false</enabled>
</releases>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>release.redhat.com</id>
<name>Red Hat Release Repository</name>
<url>https://maven.repository.redhat.com/ga/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</pluginRepository>
<pluginRepository>
<id>release.fusesource.org</id>
<name>FuseSource Release Repository</name>
<url>http://repo.fusesource.com/nexus/content/repositories/releases</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</pluginRepository>
<pluginRepository>
<id>ea.fusesource.org</id>
<name>FuseSource Community Early Access Release Repository</name>
<url>http://repo.fusesource.com/nexus/content/groups/ea</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</pluginRepository>
<pluginRepository>
<id>snapshot.fusesource.org</id>
<name>FuseSource Snapshot Repository</name>
<url>http://repo.fusesource.com/nexus/content/repositories/snapshots</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>false</enabled>
</releases>
</pluginRepository>
</pluginRepositories>