I'm not sure if this is a Clojure question, but I'm not sure where else to 
ask. I've been working on an app for the Amazon Echo. I'm trying to deal 
with this requirement, which I must deal with if I am to get the app into 
the Amazon app store: 

Check the request signature to verify the authenticity of the request. 
Alexa signs all HTTPS requests.
   
   - The Java library does this verification in the SpeechletServlet class. 
   If you do not use the Java library, you must do this verification yourself.
   - If you use the Java library without using the SpeechletServlet class, 
   you can use theSpeechletRequestSignatureVerifier class to do this.


For some bizarre reason, Amazon does not make its SDK available via the 
main Maven repository. Many developers have asked Amazon to change this, 
but for now, we have to: 

git clone g...@github.com:amzn/alexa-skills-kit-java.git

I thought I could then: 

cp -r ../../alexa-skills-kit-java/src/* src/java/

In my project.clj file I have: 

  :source-paths      ["src/clojure"]
  :java-source-paths ["src/java"]
  :main salesslick.core
  :aot :all

So all of alexa-skills-kit-java/src is now in my src/java directory. 

I still end up with these kinds of dependency issues: 

Compiling 47 source files to 
/Users/lkrubner/projects/salesvoiceapp/salescricket/target/classes
/Users/lkrubner/projects/salesvoiceapp/salescricket/src/java/com/amazon/speech/speechlet/Session.java:16:
 
error: package org.apache.commons.lang3 does not exist
import org.apache.commons.lang3.Validate;
^
/Users/lkrubner/projects/salesvoiceapp/salescricket/src/java/com/amazon/speech/slu/Intent.java:17:
 
error: package org.apache.commons.lang3 does not exist
import org.apache.commons.lang3.Validate;
^
/Users/lkrubner/projects/salesvoiceapp/salescricket/src/java/com/amazon/speech/slu/Slot.java:13:
 
error: package org.apache.commons.lang3 does not exist
import org.apache.commons.lang3.Validate;
^
/Users/lkrubner/projects/salesvoiceapp/salescricket/src/java/com/amazon/speech/speechlet/authentication/ApplicationIdVerifier.java:17:
 
error: package org.slf4j does not exist
import org.slf4j.Logger;
^
/Users/lkrubner/projects/salesvoiceapp/salescricket/src/java/com/amazon/speech/speechlet/authentication/ApplicationIdVerifier.java:18:
 
error: package org.slf4j does not exist
import org.slf4j.LoggerFactory;
^
/Users/lkrubner/projects/salesvoiceapp/salescricket/src/java/com/amazon/speech/speechlet/authentication/ApplicationIdVerifier.java:29:
 
error: cannot find symbol
private static final Logger log = 
LoggerFactory.getLogger(ApplicationIdVerifier.class);
^
symbol: class Logger
location: class ApplicationIdVerifier
/Users/lkrubner/projects/salesvoiceapp/salescricket/src/java/com/amazon/speech/speechlet/IntentRequest.java:15:
 
error: package org.apache.commons.lang3 does not exist
import org.apache.commons.lang3.Validate;
^

[shortened to avoid boredom]


What would I have to do to get a line such as this to resolve: 

import org.apache.commons.lang3.Validate;

??? 

I know there are many Clojure developers who also do a great deal of Java 
development, but I am not one of them. I love Clojure/Leinengen because 
most of the time it protects me from this craziness. 

However, if I knew of an easy way to compile the Amazon SDK on its own, 
then I would be happy to compile it and include it as a Jar. I have 
included Jars before, so I am fairly comfortable with that process. 

Any suggestions? 






-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to