Null Return on API Call - java

I'm working on building a weather app using the Open Weather API. The below properly calls the API but for some reason returns null.
JSONObject queryResults = data.optJSONObject("weather");
System.out.println(queryResults.toString());
Here is the API Call
API Call Image
When I put in "coord" or "main" or "clouds" or "sys", it works perfectly I get the results. But for some reason, just with "weather" it returns null. What am I missing? Thanks!

Needed to use JSONArray. Thanks to asfmlr in the comments above.

Related

How to get operationId for request t in Java

I am trying to access operationId in Java.
I have an access to TelemetryClient but telemetryClient.getContext().getOperation().getId() returns null and I don't know how can I get current operationId for the request.
I am looking for System.Diagnostics.Activity.Current.RootId equivalent in Java.
ThreadContext.getRequestTelemetryContext().getHttpRequestTelemetry().getContext().getOperation().getId() seems to be a way to go.

Get the user sys_id using REST API in ServiceNow?

I am trying to get the user sys_id by username using the SNOW REST API. But I couldn't find a way of doing it in the SNOW API doc.
Is it impossible to do so or any other alternative way of doing it?
Yes, this is a simple GET call. sys_id isn't returned on the default fields but will be returned if you explicitly request it:
https://[your instance].service-now.com/api/now/table/sys_user?sysparm_query=user_name%3D[your username]&sysparm_fields=sys_id&sysparm_limit=1
The REST api explorer is very handy for building and testing queries like this. You can find it by searching the navigator.

Get Dropbox accessToken using DbxWebAuth.finish method

I'm trying to complete the oAuth2 trip to get the AccessToken.
I followed this official guide to understand how Java API works, and I'm using the documentation to understand how class work together, but I'm not able to understand how com.dropbox.core.DbxWebAuth#finish(Map<String, String[]> queryParams).
I don't understand which values give to queryParams.
Do someone explain me?
PS: This is some code that I write to retrive the access token.
String accessToken(String code, String state, DbxWebAuth webAuth) {
DbxAuthFinish authFinish = webAuth.finish(????);
return authFinish.accessToken;
}
The Dropbox Java Core SDK tutorial does use DbxWebAuthNoRedirect which has a different finish method than DbxWebAuth:
DbxWebAuthNoRedirect.finish
DbxWebAuth.finish
The DbxWebAuth.finish documentation has the following for queryParams:
queryParams - The query parameters on the GET request to your redirectUri.
For a sample of how to use it, the web-file-browser example app included with the SDK uses DbxWebAuth.finish as such:
DbxAuthFinish authFinish;
try {
authFinish = getWebAuth(request).finish(request.getParameterMap());
}

Getting Null value in token

I am try to integrate a paypal express checkout in my java application.When I try to access the token,it returns null.Here is my code
SetExpressCheckoutResponseType set=s.setExpressCheck();
if(set!=null)
System.out.println(set.getToken());
it prints null
Uhm that is a little bit too less information.
What is s. What librarby|framework do you use?
Did you read express-checkout?
I'm guessing that you use the Paypal Api.

PHP how to consume SOAP web services?

I'm very new in using web services. Appreciate if anyone can help me on this.
In my PHP codes, I'm trying to use the SOAP web services from another server (JIRA, java). The JIRA SOAP API is shown here.
$jirasoap = new SoapClient($jiraserver['url']);
$token = $jirasoap->login($jiraserver['username'], $jiraserver['password']);
$remoteissue = $jirasoap->getIssue($token, "issuekey");
I found that my codes have no problem to call the functions listed on that page. However, I don't know how to use the objects returned by the API calls.
My question are:
In my PHP codes, how can I use the methods in the Java class objects returned by SOAP API calls?
For example, the function $remoteissue = $jirasoap->getIssue($a, $b) will return a RemoteIssue. Based on this (http://docs.atlassian.com/rpc-jira-plugin/latest/com/atlassian/jira/rpc/soap/beans/RemoteIssue.html), there are methods like getSummary, getKey, etc. How can I use these functions in my codes?
Based on some PHP examples I found from the internet, it seems that everyone is using something like this:
$remoteissue = $jirasoap->getIssue($token, "issuekey");
$key = $remoteissue->key;
They are not using the object's methods.
Refer to this example, it seems that someone is able to do this in other languages. Can it be done in PHP too?
The problem I'm facing is that, I am trying to get the ID of an Attachment. However, it seems that we can't get the Attachment ID using this method: $attachmentid = $remoteattachment->id;. I am trying to use the $remoteattachment->getId() method.
In PHP codes, after we made a SOAP API call and received the returned objects, how do we know what data fields are available in that object?
For example,
$remoteissue = $jirasoap->getIssue($token, "issuekey");
$summary = $remoteissue->summary;
How do we know ->summary is available in $remoteissue?
When i refer to this document (http://docs.atlassian.com/rpc-jira-plugin/latest/com/atlassian/jira/rpc/soap/beans/RemoteIssue.html), I don't see it mention any data fields in RemoteIssue. How do we know we can get key, summary, etc, from this object? How do we know it is ->summary, not ->getsummary? We need to use a web browser to open the WSDL URL?
Thanks.
This question is over one year old, but to share knowledge and provide an answer to people who have this same question and found this page, here are my findings.
The document mentioned in the question is an overview of the JiraSoapService interface. This is a good reference for what functions can be called with which arguments and what they return.
If you use Java for your Jira SoapClient the returned objects are implemented, but if you use PHP, the returned objects aren't of the type stated in this documentation and do not have any of the methods mentioned. The returned objects are instances of the internal PHP class stdClass, which is a placeholder for undefined objects. The best way to know what is returned is to use var_dump() on the objects returned from the SoapCalls.
$jirasoap = new SoapClient($jiraserver['url']);
$token = $jirasoap->login($jiraserver['username'], $jiraserver['password']);
$remoteissue = $jirasoap->getIssue($token, "PROJ-1");
var_dump($remoteissue);
/* -- You will get something like this ---
object(stdClass)#2 (21) {
["id"]=> string(3) "100"
["affectsVersions"]=> array(0) { }
["assignee"]=> string(4) "user"
...
["created"]=> string(24) "2012-12-13T09:27:49.934Z"
...
["description"]=> string(17) "issue description"
....
["key"]=> string(6) "PROJ-1"
["priority"]=> string(1) "3"
["project"]=> string(4) "PROJ"
["reporter"]=> string(4) "user"
["resolution"]=> NULL
["status"]=> string(1) "1"
["summary"]=> string(15) "Project issue 1"
["type"]=> string(1) "3"
["updated"]=> string(24) "2013-01-21T16:11:43.073Z"
["votes"]=> int(0)
}
*/
// You can access data like this:
$jiraKey = $remoteissue->key;
$jiraProject = $remoteissue->project;
The document you referred to in #2 is to a Java implementation and really doesn't give you any help with PHP. If they do not publish a public API for their service (which would be unusual), then using the WSDL as a reference will let you know what objects and methods are accepted by the service and you can plan your method calls accordingly.
The technique you used to call getIssue(...) seems fine, although you should consider using try...catch in case of a SoapException.
I have used Jira SOAP in .NET project and IntelliSense hinted me what fields are available for returned object.
You can use something like VS.Php for Visual Studio or Php for Visual Studio if you are using Visual Studio.
Or you can choose one of the IDEs from here with support of IntelliSense.

Categories

Resources