我为客户帐户数据API下载了示例应用
我将战争文件添加到Tomcat。我可以登录,但是getInstitutions返回null。我在SampleApp.properties文件中添加了Oauth用户密钥,用户密码和SAML ID提供程序ID。

intuit-aggcat-config.xml的内容,来自Tomcat和HTTP标头的错误粘贴在下面

=================intuit-aggcat-config.xml looks like this==============
<?xml version="1.0" encoding="ISO-8859-1" ?>
<intuit-config>
    <saml>
        <keystoreFile>e:\intuit\keystore.jks</keystoreFile>
        <keystorePassword>mypassword</keystorePassword>
        <keyPassword>mypassword</keyPassword>
        <certAlias>somealias</certAlias>
        <oAuthUrl>https://oauth.intuit.com/oauth/v1/get_access_token_by_saml</oAuthUrl>
    </saml>
</intuit-config>

==================Tomcat Logs====================================

URL path [/home.htm] onto handler 'homeController'
INFO : org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping - Mapped URL path [/login.htm] onto handler 'loginController'
INFO : org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping - Mapped URL path [/signOut.htm] onto handler 'loginController'
INFO : org.springframework.web.servlet.DispatcherServlet - FrameworkServlet 'aggcat': initialization completed in 1954 ms
INFO : com.intuit.aggcat.LoginController - LoginController -> showLoginPage()
INFO : com.intuit.aggcat.LoginController - LoginController -> authenticateUser()
INFO : com.intuit.aggcat.AggCatApiController - Reached fetchInstitutions
INFO : com.intuit.aggcat.AggCatApiController - Created AggCatService
INFO : com.intuit.aggcat.AggCatApiController - Failed to fetch institutions, null
===============Http headers=====================================


GET /AggCatSampleApp/login.htm HTTP/1.1
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:18.0) Gecko/20100101 Firefox/18.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Cookie: JSESSIONID=169482CCCF0786BA966F1CB0B2D1F00D
Connection: keep-alive

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Content-Type: text/html;charset=ISO-8859-1
Content-Language: en-US
Content-Length: 1611
Date: Sun, 03 Feb 2013 12:52:24 GMT
----------------------------------------------------------
http localhost 8080/AggCatSampleApp/login.htm

POST /AggCatSampleApp/login.htm HTTP/1.1
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:18.0) Gecko/20100101 Firefox/18.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http localhost 8080/AggCatSampleApp/login.htm
Cookie: JSESSIONID=169482CCCF0786BA966F1CB0B2D1F00D
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 41
loginUserName=user&loginPassCode=password
HTTP/1.1 302 Found
Server: Apache-Coyote/1.1
Location: http localhost 8080/AggCatSampleApp/getInstitution.htm
Content-Language: en-US
Content-Length: 0
Date: Sun, 03 Feb 2013 12:52:33 GMT
----------------------------------------------------------
http localhost 8080/AggCatSampleApp/getInstitution.htm

GET /AggCatSampleApp/getInstitution.htm HTTP/1.1
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:18.0) Gecko/20100101 Firefox/18.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http localhost 8080/AggCatSampleApp/login.htm
Cookie: JSESSIONID=169482CCCF0786BA966F1CB0B2D1F00D
Connection: keep-alive

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Content-Type: text/html;charset=ISO-8859-1
Content-Language: en-US
Content-Length: 2494
Date: Sun, 03 Feb 2013 12:52:33 GMT
----------------------------------------------------------


问候,
基兰

最佳答案

确保您的intuit-aggcat-config.xml和密钥库(都在e:\ intuit \ keystore.jks中)都在类路径中(构建类文件夹可以解决问题)。我敢肯定,您已经注意到错误报告的内容不太丰富-您需要自己进行日志记录或输出。像这样在WebUtil.java类中添加一些旧式调试,以确保正在读取属性文件:

public AggCatService getAggCatService(String userId){

    AggCatService service = null;
    try{
        System.out.println("Authorizing:");
        System.out.println("  OUTH_CONSUMER_KEY: " + OAUTH_CONSUMER_KEY);
        System.out.println("  OAUTH_CONSUMER_SECRET :" + OAUTH_CONSUMER_SECRET);
        System.out.println("  SAML_PROVIDER_ID :" + SAML_PROVIDER_ID);
        System.out.println("  User ID :" + userId);
        OAuthAuthorizer oauthAuthorizer = new OAuthAuthorizer(OAUTH_CONSUMER_KEY, OAUTH_CONSUMER_SECRET, SAML_PROVIDER_ID,userId);
        System.out.println("OATH: " + oauthAuthorizer.toString());
        Context context = new Context(oauthAuthorizer);
        service= new AggCatService(context);
        System.out.println("Service: " + service.toString());

    }
    catch(AggCatException ex){
        System.out.println("Failed to authorize");
        System.out.println(ex.getMessage());
    }
    return service;

}


并添加它(并调用它)以确保同时读取intuit-aggcat-config.xml:

public void status()
{
    System.out.println("Classpath = " + System.getProperty("java.class.path"));
    System.out.println("Working Directory = " + System.getProperty("user.dir"));
    System.out.println("Keystore File = " + Config.getProperty("saml.keystoreFile"));
    System.out.println("Keystore Password = " + Config.getProperty("saml.keystorePassword"));
    System.out.println("Key Password = " + Config.getProperty("saml.keyPassword"));
    System.out.println("Cert Alias = " + Config.getProperty("saml.certAlias"));
    System.out.println("Base URL = " + Config.getProperty("baseURL.aggcat"));
}

09-28 13:03