Guys I've being trying to get a query answered on the issues list with
no success, looking at the list contents I probably should have posted
this on the discuss list.
I'm having problems getting SSL working, can anyone here help with
this. This is my final stumbling block if I get over this alls
looking well.
...
Further investigation is showing that the following code is being
ignored!
component
.getContext
().getParameters
().add("keystorePath",keystoreFile.toURI().toASCIIString());
component
.getContext().getParameters().add("keystorePassword","jboxXXX");
component.getContext().getParameters().add("keyPassword","jboxXXX");
And that the code is using the defaults. Is component.getContext the
correct way of setting these parameters?
Can someone confirm that the BasicHttpsServer example from the book is
working with 1.1-M5? If someone has a testcase can you check it also
works if the keystore is not in "${user.home}/.keystore"
Thanks.
On 8 Aug 2008, at 09:47, Christy Ring wrote:
Guys first posting. Using Restlet 1.1m5.
I've been experimenting with Restlet (vs Jersey) as one approach
to a solution we are working on. Currently I am trying to get
SSL working with the Simple connector. I've read through the
previous posts on the configuration of this and I believe I am
configuring it correctly.
When I startup my mainline I get the keystore tamper error.
Exception in thread "main" java.io.IOException: Keystore was
tampered with, or password was incorrect
at
sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:768)
I am running on a mac with Java 5 and creating a new keystore in
my home directory as follows:
keytool -genkey -dname "cn=Christy Ring, ou=JBox, o=Vennetics,
c=GB" -alias vennetics -keypass jboxXXX -keystore .keystore -
storepass jboxXXX
Listing the keystore I get the following:
$ keytool -list
Enter keystore password: jboxXXX
Keystore type: jks
Keystore provider: SUN
Your keystore contains 1 entry
vennetics, Aug 7, 2008, keyEntry,
Certificate fingerprint (MD5): B9:D9:07:98:8B:
92:B2:FF:B0:F4:D7:9C:D8:19:FB:16
My main line looks like the following:
public static void main(String[] args) throws Exception {
// Create a new Component.
Component component = new Component();
File keystoreFile = new File("/Users/
christyring/.keystore", ".keystore");
component
.getContext
().getParameters
().add("keystorePath",keystoreFile.toURI().toASCIIString());
component
.getContext().getParameters().add("keystorePassword","jboxXXX");
component.getContext().getParameters().add("keyPassword","jboxXXX");
// Add a new HTTPS server listening on port 8183.
component.getServers().add(Protocol.HTTPS, 8183);
// Attach the sample application.
component.getDefaultHost().attach("/jbox/v2",new
WidgetApplication(component.getContext()));
// Start the component.
component.start();
...
Can anyone suggest what I'm doing wrong? Or provide an concrete
example for me to compare with? Also can you confirm that I have
created my certificate correctly when creating the keystore?
As an aside, I really like how you have implemented the api and
how the components are constructed, for REST it feels much more
natural than what is described in JSR 311, I hope that you will
continue to maintain this.
I read that you offer support for 311 annotations, I hope that
this does not become the defacto way of doing thinks in restlets.
Regards,
[EMAIL PROTECTED]
Regards,
[EMAIL PROTECTED]