2017-05-04 78 views
0

我正尝试使用java代码连接到SAP服务器,该代码在eclipse中编写。 这里我使用这个代码.......Jco.createClient对于Jco类型是未定义的

JCO.Client mConnection;  /*getting compilation error*/ 
JCO.Repository mRepository; /*getting compilation error*/ 

Properties connectProperties = new Properties(); 
connectProperties.setProperty(DestinationDataProvider.JCO_ASHOST, "********"); 
connectProperties.setProperty(DestinationDataProvider.JCO_SYSNR, "**"); 
connectProperties.setProperty(DestinationDataProvider.JCO_CLIENT, "***");     

connectProperties.setProperty(DestinationDataProvider.JCO_USER, "*****"); 
connectProperties.setProperty(DestinationDataProvider.JCO_PASSWD, "*****"); 
connectProperties.setProperty(DestinationDataProvider.JCO_LANG, "en"); 
createDestinationDataFile("ABAP_AS_WITHOUT_POOLs", connectProperties); 
mConnection = JCo.createClient(connectProperties); /*getting compilation error */ 

而且我已经在我的项目加入sapjco3.jar。 我不知道为什么我会收到编译错误...

+0

请告诉我们错误。 –

+0

mConnection = JCo.createClient(connectProperties);错误:createClient(connectProperties)未定义为JCo类型 –

回答

0

您的代码使用了已弃用的JCo版本2.x,SAP现在不再支持这个版本。

在JCo 2.x中,一个API是JCO.createClient(...)而不是JCo.createClient(...)

类别JCo来自包com.sap.conn.jco属于JCo 3.0 API,但没有方法createClient()。 并且类别JCO.ClientJCO.Repository也不再存在于JCo 3.0中。

的JCO API 2版本完全改变为3

我建议不要用任何较长的去支持的软件工作,但你的Java源代码,从现在使用JCO版本2.x到3.0迁移。 或者如果刚开始开发你的第一个JCo应用程序,不要再考虑JCo 2.x,而应该直接使用和学习JCo 3.0。

+0

JCoDestination destination = JCoDestinationManager.getDestination(“**********”); \t \t System.out.println(“Attributes:”); System.out.println(destination.getAttributes());你能建议我如何找到目标/我应该把什么.getDestination()? –

+0

使用上面的代码我能够验证连接是否建立,只是不知道目的地的价值是什么。 –

+0

您必须将您的目的地的名称(“YourDestName”)。如果使用默认的JCo基础架构实现,则需要在当前工作目录中创建一个名为'YourDestName.jcoDestination'的属性文本文件。该文件必须包含所有登录参数,如'jco.client.ashost = hostname.in.your.domain'。接口“com.sap.conn.jco.ext.DestinationDataProvider”的JavaDoc中描述了有效和必需的属性。 – Trixx

相关问题