閲覧頂きありがとうございます。
今回やりたいことは表題のとおりOneLoginのサンプルをJavaで試せるようなので、使ってみたくXammp5.6.21を使って実行をしたいと思っております。
1.環境に関する前述
環境はWindows7 64bit, JAVA SE 1.8で、
Eclipseを使用して試したいです。
(手っ取り早くこちらの開発環境に近づけるにはXAMPP ver 5.6.21をご使用ください。)
2.参考にしたサイト、サービス
- OneLogin 日本語公式サイト
- OneLogin Developer
https://developers.onelogin.com/
- OneLogin Java ToolKit
https://developers.onelogin.com/saml/java
- SSO を実現するための SAML2.0 の実装。まずはサンプルを動かす
http://qiita.com/katsuhiko/items/1960f96661cdf6daf63b
3.準備
- OneLoginのトライアル版にユーザー登録する
- OneLoginのDeveloperサイトからJavaのToolKitを取得
- Eclipseで新規Javaプロジェクトを作成
- Srcフォルダに2でダウンロードしたToolkitフォルダ内の
[src]->[main]->[java]以下の階層のフォルダを全て突っ込む
(本来であればjavaのもう一回層下のcomフォルダをsrcに入れるべきですがパッケージとしてEclipseが認識しないので一回層上にセット)
5. インポート設定がおかしくなってしまうので全ファイルの
"com.onelogin.saml2~~~~~"となっている部分の先頭に"java."を追記
6. いろいろと参照しているらしいのですがマニュアルでライブラリを突っ込まなきゃいけないので、以下のライブラリを突っ込んでおります。
- Apache_Common_Codec : commons-codec-1.10.jar
- Apache_Commons : commons-lang3-3.5.jar
- Apache_Commons_Degister : commons-digester3-3.2.jar
- Apache_xml : apache-xml-xerces.jar
- Joda Time : joda-time-2.9.6.jar
- Apache Jasper : org.apache.jasper.jar
- SLF4j : slf4j-api-1.7.22.jar
- XML Security : xmlsec-1.3.0.jar
- JavaX Servlet : javax.servlet.jsp-api-2.3.1.jar
4.いざ実行! しかしエラーが?
Chromeブラウザで
http://localhost:8080/Sample/~~~~~~/index.jsp
を実行しましたが以下のエラーとなってしまいます
org.apache.jasper.JasperException: JSPのクラスをコンパイルできません: An error occurred at line: [14] in the generated java file: [C:\Users\rinfinity\Downloads\eclipse_Ult\pleiades\xampp\tomcat\work\Catalina\localhost\SAML_Sample\org\apache\jsp\src\webapp\dologin_jsp.java] Only a type can be imported. java.com.onelogin.saml2.Auth resolves to a package JSPファイル: /src/webapp/dologin.jsp の中の10行目でエラーが発生しました Auth cannot be resolved to a type 7: </head> 8: <body> 9: <% 10: Auth auth = new Auth(request, response); 11: if (request.getParameter("attrs") == null) { 12: auth.login(); 13: } else { JSPファイル: /src/webapp/dologin.jsp の中の10行目でエラーが発生しました Auth cannot be resolved to a type 7: </head> 8: <body> 9: <% 10: Auth auth = new Auth(request, response); 11: if (request.getParameter("attrs") == null) { 12: auth.login(); 13: } else { Stacktrace: org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:103) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:366) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:485) org.apache.jasper.compiler.Compiler.compile(Compiler.java:379) org.apache.jasper.compiler.Compiler.compile(Compiler.java:354) org.apache.jasper.compiler.Compiler.compile(Compiler.java:341) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:657) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
(https://gyazo.com/76c40113908d40c063982542607c76f4)
↑みにくい方はこちらの画像版を参照してください!
5.やりたいこと
sampleがきちんと動くことを確認できればそれで大丈夫です。。
解決に向けてご協力およびご教授お願いします。
以上よろしくお願いします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。