WIF Error: "ID3094: Cannot create WS-Federation message from the given URI 'http://myurl'" - wif

Can anyone tell me what this error means?
I just starting getting it from the STS I build using WIF and I can't find any documentation.

The URL is missing some required parameters.
A message instance is created from the information present in the URL using the WSFederationMessage.CreateFromUri method.
This fragment from the MSDN page should provide an idea of what's going on:
Returns an appropriate implementation of WSFederationMessage based on the wa parameter in the query string; for example, if wa parameter is "wsignout1.0" then a SignOutRequestMessage object is returned.
Other exceptions may be thrown depending on the combination and values of parameters present in the query string.
Invokes the TryCreateFromUri method.

Related

Delta<T> As a odata parameter in web api Action

I have requirement where i want to take two parameters for an action in odata, First parameter as string and second as delta, where T is entity type. There isn’t any syntax error but whenever i m making a post request it is throwing an exception stating this property is not in the delta, though i am passing the valid property from request body.
Can anyone help?

Cypher - query missing parameter throws an exception

I have simple query with $login parameter
MATCH (user: User {login: $login})
RETURN user
when it is set to null in Neo4j Browser with
:param login => null
execution does not throw an exception and returns nothing which is expected.
However when I do not provide $login parameter following is thrown
Neo.ClientError.Statement.ParameterMissing
Expected parameter(s): login
Is there a way to proceed with query even if parameter key is not provided?
P.S.
I think the same issue is adressed here and according to the originator droping WHERE clause should make it work.
If a parameter isn't provided, you will always encounter an error when attempting to use that parameter.
However, you can get around this a bit with a little indirection. Consider passing a map structure as the parameter, which may contain entries for all of your other parameters, optional or not. As long as you're passing in the map parameter, your query should execute, and you can use either dot notation or index/key access into the map to use the parameters from the map.
For example:
:params {params:{name:'Keanu Reeves'}}
We now have a $params parameter in scope, which is a map. Usage can be $params.login or $params['login'], both of which return null for the non-existing entry in the map.

OData call with $filter and $expand simultaneously

I've been trying to call a entity, but i'm supposed to call the results from its associated entities. I tried to do it with the following URL:
/sap/opu/odata/XXXXXXXX/SERVICE_NAME/MatnrGetdetailCollection?$filter=IVendorId eq '1701' and ILanguage eq 'P' and IMaterial eq 'M-05'&$expand=MatnrClassGetdetail
I must use the filter because the called function has these mandatory parameters.
Am I making any mistake on the URL or the error isn't there?
In general $filter and $expand can be combined, we use it in our application. Therefore please see Layla's Comment. In addition, you should tell us what the actual error is.
If MatnrGetdetailCollection is indeed an entity set, then the corresponding entity must have a navigation property of the name MatnrClassGetdetail, otherwise $expand won't work.
There is some problem with the URL when you want to go for obligatory parameters. Please pass them as key values in segw and and go for the format I'm sending:
/sap/opu/odata/sap/SERVICE_NAME/EntitySet(keyfield='value',keyfield='value')/?$expand=navigationName

maxdatetime in odata URL

Hi have list of dates I need to get name where the maximum date is there.
In oData Service there is function maxdatetime(). I used like this
url/services/List?$format=json&$select=name&$filter=date+eq+maxdatetime()
But it is showing exception
{"odata.error":{"code":"","message":{"lang":"en-US","value":"An unknown function with name 'maxdatetime' was found. This may also be a key lookup on a navigation property, which is not allowed."}}}
How can I solve this ?
Function maxdatetime() should be implemented by service code. According to your exception, the service does not implement it. If you have right to change server side code, you can try to implement. Otherwise, Try:
RootUrl/List$filter=date eq 9999-12-31T11:59:59-00:00

Why does Quickbooks Web Connector not call closeConnection?

I have a working prototype implementation of the Quickbooks Web Connector (QBWC) interface. Everything works as expected except that the closeConnection method is not getting called most of the time.
Expected Behavior
The QuickBooks Web Connector Programmer’s Guide states the following (pg. 21):
What happens when QBWC gets this string array? If the second member of
the string array contains “none” or “nvu”, QBWC will display a
message, call closeConnection, and stop the session.
Also, the Guide indicates the same info in the "clientVersion and authenticate callbacks" illustration (Figure 2-2, pg. 20):
Call authenticate
If return is "none" or "nvu",
Display message, call closeConnection and stop
Actual Behavior
When the authenticate method returns a value of "none", these (and only these) web methods are called (in the order listed):
serverVersion
clientVersion
authenticate
Note that this is only when there is no work available for QBWC/Quickbooks. When there is work, the authenticate web method returns an empty string and QBWC subsequently calls the following web methods:
sendRequestXml
receiveResponseXml
closeConnection
EDIT 1: After forcing the clientVersion web method to return an "E" result, it does halt the update process as documented in the Programmer's Guide but the closeConnection web method is not called under these circumstances either. It's interesting to note that QBWC does still call the serverVersion web method after the clientVersion returns an "E" result.
Troubleshooting Efforts
Verified (through tracing) that the second member of the string array does in fact contain a value of "none". However, the closeConnection callback never fires for that session.
Double-checked the QBWC client log (QWCLog.txt) and find no mention of closeConnection being called and consequently no errors related to such a call.
Verified that the method code used for closeConnection is identical to the example found in the Programmer's Guide (pg. 68).
Supporting Info
For what it's worth, here are a few details of the implementation.
ASP.Net 3.5 (c#)
QBWC 2.0.0.139

Resources