Hello All,
I am new to JAX-RS and I am trying to use Jersey to build a simple RESTful
Webservice.
I have 2 questions. Please clarify these:
1.
I am trying to have my simple webservice like this URL
http://localhost:8080/SampleJersey/rest/inchi/InChIName
The InChIName is a string like this
InChI=1S/C9H8O4/c1-6(10)13-8-5-3-2-4-7(8)9(11)12/h2-
5H,1H3,(H,11,12). How do I pass this as a @PathParam, I mean a normal
String is working fine but here there are slashes,hyphens, and commas. How
do I make it to ignore these. I tried putting it in quotes, but that didnt
work. How should I do this?
I got this working using @Context UriInfo and
getQueryparamaeters() method. But if I use that my URL should have a '?=' to
take in the InChIname. I do not want to have "?=" in my URL structure.
Please correct me if I am thinking wrong.
1.
I need to pass that InChI to another webservice and that returns an XML
as an output and I want to display that XML output as my Webservice's
output. If I have @Produces("application/xml") will it work?
This is my code:
@Path("/inchi")
public class InChIto3D {
@GET
@Path("{inchiname}")
@Produces("text/plain")
public String get3DCoordinates(@PathParam("inchiname")String inchiName) {
String ne="";
try{
URL eutilsurl = new URL(
"
http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?"
+ "db=pccompound&term=%22"+inchiName+"%22[inchi]");
BufferedReader in = new BufferedReader(
new
InputStreamReader(eutilsurl.openStream()));
String inputline;
while ((inputline=in.readLine())!=null)
ne=ne+inputline;
}catch (MalformedURLException e1) {
}catch (IOException e2){
}
return ne;
}
}
Thanks in advance
Sashikiran
--
Sashikiran Challa
MS Cheminformatics,
School of Informatics and Computing,
Indiana University, Bloomington,IN