使用JAVA(IOM Bridge)将变量插入SAS。我应该使用CORBA存根和JDBC还是有其他选择吗?

时间:2014-07-16 06:42:41

标签: java jdbc sas corba

这是我的代码段

的一部分
WorkspaceConnector connector = null;
WorkspaceFactory workspaceFactory = null;
String variableListString = null;
Properties sasServerProperties = new Properties();
sasServerProperties.put("host", host);
sasServerProperties.put("port", port);
sasServerProperties.put("userName", userName);
sasServerProperties.put("password", password);
Properties[] sasServerPropertiesList = { sasServerProperties };
workspaceFactory = new WorkspaceFactory(sasServerPropertiesList, null, logWriter);
connector = workspaceFactory.getWorkspaceConnector(0L);
IWorkspace sasWorkspace = connector.getWorkspace();
ILanguageService sasLanguage = sasWorkspace.LanguageService();
//send variable list string
//continued

我需要通过IOM桥将“variableListString”发送到SAS服务器。 Java SAS API没有给出明确的方法。使用CORBA和JDBC是最好的方法吗?给我一个提示如何做到这一点。有没有其他方法可以做到?

1 个答案:

答案 0 :(得分:1)

这被问过一段时间,但是如果有人仍然希望做同样的事情,这是有用的 一种方法是构建一串sas代码并将其提交给服务器。我们使用此方法在主机上为连接的会话设置变量。您还可以使用此技术使用%include“代码路径/我的sas code.sas”这样的代码来包含sas代码;;:

...从问题中的代码继续...

langService = iWorkspace.LanguageService();
    StringBuilder sb = new StringBuilder();
    sb.append("%let mysasvar=" + javalocalvar);
    ... more variables
    try {
        langService.Submit(sb.toString());
    } catch (GenericError e) {
        e.printStackTrace();
    }