You are not logged in.
Pages: 1
Hi everybody,
Is there a way to use windows authentication on MVC/MVVM applications?
Thank you so much Chaa.
I noticed the issue when I recompiled two of my apps two days ago using the latest build.
So I went through the timelines and tried each build and see which build would work. The latest build that worked is ecdbf3a280 (2018-01-19).
I created ticket 560f084ad0 to report this issue.
I hope this can be resolved soon.
Thanks
TDDDRepositoryRestFactory.ComputeMapping in mORMotDDD is raising an error:
" TInfraRepoPersonFactory types do not match at DB level: TPerson.PhoneNumbers:
TawUTF8DynArray=ftBlob and TSQLRecordPerson.PhoneNumbers:Variant=ftUTF8 ..."
Is there something I missed?
AcceptSecurityContext is returning -2146893048.
Sorry for late reply.
Thanks for the test case code. It works fine.
However, I'm still getting the same error with the latest nightly build.
I'm using Windows 8.1 and Delphi XE2 with server and client running on the same machine.
Call Stack Trace shows the error occurred on Line 465 ( SetString(aOutData, PAnsiChar(OutBuf.pvBuffer), OutBuf.cbBuffer); ) on SynSSPIAuth.pas
Here is the log when TSQLHttpClient.SetUser('','') is executed:
20150814 09553051 + TSQLRestServerDB(00694E20).URI(GET library/TimeStamp inlen=0)
20150814 09553051 call TSQLRestServerDB(00694E20) TimeStamp
20150814 09553051 srvr TSQLRestServerDB(00694E20) GET library/TimeSta
mp SOA-Method -> 200 with outlen=12 in 139 us
20150814 09553051 - 00.000.455
20150814 09553053 + TSQLRestServerDB(00694E20).URI(GET library/Auth?UserName
=&data=YHwGBisGAQUFAqByMHCgMDAuBgorBgEEAYI3AgIKBgkqhkiC9xIBAgIGCSqGSIb3EgECAgYKK
wYBBAGCNwICHqI8BDpOVExNU1NQAAEAAAC3sgjiBwAHADMAAAALAAsAKAAAAAYDgCUAAAAPTUlTLVNUQ
UZGMDNBRERVTkVU inlen=0)
20150814 09553053 call TSQLRestServerDB(00694E20) Auth
20150814 09553053 srvr TSQLRestServerDB(00694E20) GET library/Auth SO
A-Method -> 200 with outlen=367 in 469 us
20150814 09553053 - 00.001.271
20150814 09553053 + TSQLRestServerDB(00694E20).URI(GET library/Auth?UserName
=&data=oXcwdaADCgEBoloEWE5UTE1TU1AAAwAAAAAAAABYAAAAAAAAAFgAAAAAAAAAWAAAAAAAAABYA
AAAAAAAAFgAAAAAAAAAWAAAADXCiOIGA4AlAAAAD2MoXA034A1w8Gl4sVrQUQCjEgQQAQAAAGV8baguT
wXoAAAAAA%3D%3D inlen=0)
20150814 09553053 call TSQLRestServerDB(00694E20) Auth
20150814 09553053 EXC EOSError ("System Error. Code: 87.\r\nThe param
eter is incorrect") at 004246E5 stack trace API 004AC338 004AC360 00407E44
20150814 09553053 debug TSQLRestServerDB(00694E20) TSQLRestRoutingREST.E
rror: { "errorCode":500, "error": {"EOSError":{"EOSError":"System Error. Cod
e: 87.\r\nThe parameter is incorrect"}} }
20150814 09553053 srvr TSQLRestServerDB(00694E20) GET library/Auth SO
A-Method -> 500 with outlen=116 in 679 us
20150814 09553053 - 00.001.136
I also tried .SetUser('DomainName\UserName','password') and still get the same error.
Is there something that I missed?
It's working as expected.
Thanks ab.
I downloaded the latest nightly build (1.18.1752) and still got the same result. I'm using windows 8.1 and Delphi XE2.
Done some tests. The maximum ID value that JSONToObject can handle properly is 2147483647 (i.e. the maximum value of an integer). Seems that function GetInteger (line 22983 from SynCommons.pas and called from mORMot.pas line 42084) cannot handle values more than 2147483647.
I have a JSON object created from ObjectToJSON in an interfaced-based service which returned in the content field of a TServiceCustomAnswer.
{
ID: 8201104080000,
Code: "",
LastName: "Cruz",
FirstName: "Emily",
MiddleName: "Grant",
Suffix: "",
BarCode: "8201104080000R",
CardNo: 0,
Programme: "IGNATIAN SPIRITUALITY & FORMATION OFFICE",
Section: "",
PatronType: "E-AA"
}
The client uses JSTONToObject to fill up a TSQLRecord Object. However the ID is assigned to object is 2011511936 instead of 8201104080000.
Can someone tell me what is wrong?
I updated my Windows 8.0 to Windows 8.1 and the errors are gone.
I set up a new PC Win 8.1, downloaded the nightly build and latest sqlite3.obj and run the testsql3.exe with the following results:
Synopse mORMot Framework Automated tests
------------------------------------------
1. Synopse libraries
1.1. Low level common:
- System copy record: 22 assertions passed 87us
- TRawUTF8List: 70,005 assertions passed 32.94ms
! - TDynArray: 2 / 1,027,709 FAILED 109.47ms
- TDynArrayHashed: 1,200,629 assertions passed 74.46ms
- TObjectListHashed: 999,889 assertions passed 294.46ms
- TObjectDynArrayWrapper: 167,501 assertions passed 12.39ms
- Fast string compare: 7 assertions passed 106us
- IdemPropName: 30 assertions passed 134us
- Url encoding: 132 assertions passed 844us
- GUID: 9,007 assertions passed 2.38ms
- IsMatch: 599 assertions passed 163us
- Soundex: 35 assertions passed 177us
- Numerical conversions: 1,115,443 assertions passed 192.36ms
- crc32c: 30,030 assertions passed 61.50ms
pas 23.29ms 256.1 MB/s fast 2.89ms 2.0 GB/s sse42 1.15ms 1.0 GB/s
- Curr 64: 20,053 assertions passed 611us
- CamelCase: 11 assertions passed 60us
- Bits: 4,774 assertions passed 111us
- Ini files: 7,004 assertions passed 11.55ms
- UTF8: 82,129 assertions passed 889.48ms
- Iso 8601 date and time: 36,015 assertions passed 3.64ms
- Url decoding: 1,100 assertions passed 291us
- Mime types: 23 assertions passed 90us
- TSynTable: 875 assertions passed 2.71ms
- TSynCache: 404 assertions passed 151us
- TSynFilter: 1,005 assertions passed 2.11ms
- TSynValidate: 677 assertions passed 536us
- TSynLogFile: 42 assertions passed 402us
Total failed: 2 / 4,775,150 - Low level common FAILED 1.69s
1.2. Low level types:
- RTTI: 58 assertions passed 195us
- Url encoding: 200 assertions passed 452us
! Exception EAccessViolation raised with messsage:
! Access violation at address 00463941 in module 'TestSQL3.exe'. Read of addres
s 00000003
Synopse framework used: 1.18.625
Running on wEight_64 with code page 1252
Generated with: Delphi XE2 compiler
Time elapsed for all tests: 1.77s
Tests performed at 12/10/2014 5:57:45 PM
Total assertions failed for all test suits: 2 / 4,775,150
! Some tests FAILED: please correct the code.
Done - Press ENTER to Exit
Is there anything that I've missed?
I'm getting this OLEDB Error 80040E14 with this code:
AssetDBProps := TOleDBMSSQLConnectionProperties.Create(
ASSET_DB_SERVER
, ASSET_DB_NAME
, ASSET_DB_USER
, ASSET_DB_PASSWORD
);
AssetModel := TSQLModel.Create(ASSET_TABLES,ASSET_ROOT);
VirtualTableExternalRegisterAll(AssetModel,AssetDBProps,false);
AssetRestServer := TSQLRestServerDB.Create(AssetModel,':memory:',true);
AssetRestServer.CreateMissingTables();
Portion of log file with error:
20140923 13244913 SQL TOleDBStatement(01FF15A0) CREATE INDEX NDXLocationPartOfLocation ON dbo.Location(PartOfLocation)
20140923 13244913 + TOleDBStatement(01FF15A0).005D1A7E
20140923 13244913 ERROR "EOleDBException(02054560)":"OLEDB Error 80040E14 - (line 1): The operation failed because an index or statistics with name 'NDXLocationPartOfLocation' already exists on table 'dbo.Location'.\r\n" stack trace API 004973E4 005D383F 005D39BB 005D1E9D 0054D18C 0054D8DC 004ECE02 004ED0D1 004DAC10 00559F62 005D5D32 005DBF50 7648338A 77849F72 77849F45
Any ideas?
Hi moctes,
I've modified esmondb's code by adding a field to SynAuth:
fServerUrl : "",
Change the Login definition to:
SynAuth.LogIn = function (serverUrl, root, username, password, callback, failCallback)
Add this line in the Login function:
SynAuth.fServerUrl = serverUrl;
The url parameter for the $.get and the ajax calls should now start with:
SynAuth.fServerUrl+"/"+ SynAuth.fRoot
Now you can call
SynAuth.LogIn("http://localhost:888", "root", "User", "synopse").
I believe this modification is necessary:
1. to allow the code to work across domains and
2. not mess up with the hash.
Is there a way to suppress ID generation? We are using MS SQL and would like to have the engine handle the ID generation using identity increment.
Pages: 1