Group: StrataFrame Developers
Posts: 3K,
Visits: 2.5K
|
Do you have an SMTP server that you can configure within the web.config file for the ES? Whenever the ES returns an error 500, it's because it has thrown an unexpected exception. The error handler within the ES catches those exceptions and emails the exception details to the address configured within the web.config. Make sure that's configured, then try it again, and let me know what the exception says when it gets emailed to you.
|
Group: Forum Members
Posts: 2K,
Visits: 6.6K
|
I think this one got missed...bump.
|
Group: StrataFrame Users
Posts: 84,
Visits: 835
|
OK I've tried some other things. Tried to add a new record with the following debug info: 1 | 2009-03-07 21:54:41.93 | General Command Settings | Text | System.Data.SqlClient.SqlCommand | http://www.aeswebaccess.com:80/aes/es/RemoteDataSource.ashx | False | Command Settings | INSERT INTO [dbo].[pws_Statements] ([st_Key], [st_StudentFullName], [st_PmtDueDate], [st_Email], [st_AmountDue], [st_Message]) VALUES (@st_Key, @st_StudentFullName, @st_PmtDueDate, @st_Email, @st_AmountDue, @st_Message); | Command Parameters | '123411' [DbType: AnsiString | Size: 20 | Direction: Input | SourceColumn: st_Key | SourceVersion: Current] | '' [DbType: AnsiString | Size: 52 | Direction: Input | SourceColumn: st_StudentFullName | SourceVersion: Current] | '1/1/1800 12:00:00 AM' [DbType: DateTime | Size: 0 | Direction: Input | SourceColumn: st_PmtDueDate | SourceVersion: Current] | 'heitlager@mindspring.com' [DbType: AnsiString | Size: 52 | Direction: Input | SourceColumn: st_Email | SourceVersion: Current] | '0' [DbType: Decimal | Size: 0 | Direction: Input | SourceColumn: st_AmountDue | SourceVersion: Current] | '' [DbType: AnsiString | Size: 102 | Direction: Input | SourceColumn: st_Message | SourceVersion: Current] |
Then I created a vfp database, and tried to go that route. The datasource.config is as follows: <DataSources> <DataSource DataSourceKey="Test1"> <ConnectionString>Provider=VFPOLEDB.1;Data Source="E:\Inetpub\wwwroot\aeswebaccess.com\aes\somedir\dir2\test_PPMEmailService.dbc"</ConnectionString> <TypeFullName>MicroFour.StrataFrame.Data.VfpDataSourceItem</TypeFullName> <TypeAssemblyName>MicroFour StrataFrame Base</TypeAssemblyName> <TypeAssemblyVersion>1.6.0.0</TypeAssemblyVersion> <TypeAssemblyCulture>neutral</TypeAssemblyCulture> <TypeAssemblyPublicToken>99fe9917f71608a7</TypeAssemblyPublicToken> <IsEncrypted>True</IsEncrypted> <IsCompressed>True</IsCompressed> <EncryptionKey>1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4</EncryptionKey> <EncryptionVector>1,2,3,4,5,6,7,8</EncryptionVector> <TransactionTimeout>3600</TransactionTimeout> </DataSource> </DataSources> Could there be a problem with the connection string syntax? Appmain looks like this: Dim ds As New EnterpriseDataSourceItem("testClient", _ "www.aeswebaccess.com/aes/es",80,"Test1", _ New VfpDataSourceItem("testClient"))'-- Configure the compression and encryption (optional) ds.IsCompressed = True ds.IsEncrypted = True ds.EncryptionKey = New Byte() {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4} ds.EncryptionVector = New Byte() {1, 2, 3, 4, 5, 6, 7, 8}'-- Add the EnterpriseDataSourceItem DataLayer.DataSources.Add(ds)
And again the result is the same (internal server error [500]. Debug is as follows: 2 | 2009-03-07 22:56:31.609 | General Command Settings | Text | System.Data.OleDb.OleDbCommand | http://www.aeswebaccess.com:80/aes/es/RemoteDataSource.ashx | False | Command Settings | INSERT INTO pws_statements (st_key, st_studentfullname, st_pmtduedate, st_email, st_amountdue, st_message) VALUES (?, ?, ?, ?, ?, ?); | Command Parameters | '123411' [DbType: AnsiString | Size: 18 | Direction: Input | SourceColumn: st_key | SourceVersion: Current] | '' [DbType: AnsiString | Size: 50 | Direction: Input | SourceColumn: st_studentfullname | SourceVersion: Current] | '1/1/1800 12:00:00 AM' [DbType: DateTime | Size: 0 | Direction: Input | SourceColumn: st_pmtduedate | SourceVersion: Current] | 'heitlager@mindspring.com' [DbType: AnsiString | Size: 50 | Direction: Input | SourceColumn: st_email | SourceVersion: Current] | '0' [DbType: Double | Size: 0 | Direction: Input | SourceColumn: st_amountdue | SourceVersion: Current] | '' [DbType: AnsiString | Size: 254 | Direction: Input | SourceColumn: st_message | SourceVersion: Current] |
Could it be a permission setting? The problem is I have another asp.net site running in aes/onepay directory (es is in aes/es) without a proble. Now the web.config contains the <authentication mode="Windows" /> line, but the web.config for the other site is the same. I apologize for the lengthy emails, I'm just trying to eliminate possibilities. Thanks, Marcel
|
Group: StrataFrame Users
Posts: 84,
Visits: 835
|
Thanks Trent, but still nothing. I keep on getting the same error, and I've tried every permutation of connection strings, port 80, port 443, using SQLServer Authentication and not. Tried various connection strings. Tried with and without datasource keys. I've restarted IIS a gazillion times, I rebooted the server, kicked the server, yelled at it. I reinstalled Strataframe on my side and ES on the server side ( BTW I'm using the latest Beta version). Below is debug information on one of the attempts: 1 | 2009-03-07 01:29:22.750 | General Command Settings | Text | System.Data.SqlClient.SqlCommand | http://www.aeswebaccess.com:80/aes/es/RemoteDataSource.ashx | False | Command Settings | Select st_email from pws_Statements where st_key = '1ab' | Command Parameters | No parameters are defined |
below is what shows on status.aspx Server Name (site name): | Development SDK | Registered Name: | Marcel Heitlager | Registered Company: | Advanced Education Services, Inc. | Serial Number: | [my serial number] | Server Hostname: | www.aeswebaccess.com/aes/es | License Expiration Date: | 2/9/2010 | Allowed Clients: | 2 | Allowed Hosts to Status.aspx: | 127.0.0.1 / 10.12.14.0 - 10.12.14.255 / 63.127.169.0 - 63.127.169.255 | Serialization Type: | Standard |
SMTP Settings |
---|
SMTP Server & Port: | 10.12.14.16:25 | Email From Address: | es@aeswebaccess.com | Email To Addresses: | heitlager@mindspring.com
| SMTP Auth | No |
|
Data Sources |
---|
(SqlDataSourceItem) |
---|
DataSourceKey: | | Type: | MicroFour.StrataFrame.Data.SqlDataSourceItem | Assembly: | MicroFour StrataFrame Base, Version=1.6.0.0, Culture=neutral, PublicKeyToken=99fe9917f71608a7 | Connection String: | Data Source=AESWEBACCESS\SQLEXPRESS;Initial Catalog=Test_PPMEmailService; User Id=myID; Password=myPassword; | Is Encrypted: | Yes | Encryption Key: | {default numbers } | Encryption IV: | {default numbers} | Is Compressed: | Yes | Transaction Timeout: | 1h 0m 0s |
|
Recognized Client List |
---|
It shows 1 client has connected |
I'm beginning to wonder if it has to do with where the web service is located. www.aeswebaccess.com root directory does not use secure socket layer. Everything under the /aes directory requires 128 bit ssl encryption except the /aes/es directory in which I set the do not require ssl option. When I had it set on it wouldn't even connect to the ES on port 443 (port 80 of course returned an access denied error). It would just time out. After turning it off I can connect to port 80 but I then get the error in my previous post. I wonder if I need to try moving the ES server to the root like www.aeswebaccess.com/es, unless you might have another idea. The bad thing is, I thought this would be the easy part, and I've been stuck on it for 2 days now. Oh well.
|
Group: StrataFrame Developers
Posts: 6.6K,
Visits: 6.9K
|
Still hard to give a direct answer at this point. But one thing you may consider is turning on debugging for the data source to make sure that the query is properly formatted. Next, (or maybe first) restart IIS to make sure that the application pool gets recycled. To turn on debugging for a data source, do the following: MicroFour.StrataFrame.Data.DataBasics.DataSources("").SetDebugOn(...)
|
Group: StrataFrame Users
Posts: 84,
Visits: 835
|
The status on the error is: System.Net.WebExceptionStatus.ProtocolError
|
Group: StrataFrame Users
Posts: 84,
Visits: 835
|
OK, I'm closer to a solution. WHen I turned off SSL 128 bit for that site and changed to port 80, my mac address now shows when I make the request. Now I just get a "The remote server returned an error: (500) Internal Server Error." message. The stack trace is as follows: at System.Net.HttpWebRequest.GetResponse() at MicroFour.StrataFrame.Data.Enterprise.EnterpriseDataSourceItem.SendRequestCore(BaseParams Params, RemoteDataSourceCommand Command) at MicroFour.StrataFrame.Data.Enterprise.EnterpriseDataSourceItem.ᜀ(DbCommand A_0, Boolean A_1, String A_2) at MicroFour.StrataFrame.Data.Enterprise.EnterpriseDataSourceItem.GetDataTable(DbCommand Command, OnChangeEventHandler CallBack) at MicroFour.StrataFrame.Data.DataLayer.GetDataTable(DbCommand Command, Boolean RegisterNotification) Still not quite there. But making progress (sloooooowly).
|
Group: StrataFrame Users
Posts: 84,
Visits: 835
|
I noticed at status.aspx under server name (site Name): it states Development SDK. Does that impact what I named the site? Hostname says: www.aeswebaccess.com/aes/esAlso are the any web service extensions that need to be allowed? I have ASP.NET v. 2.0.50727 allowed. I thought the requests just went over HTTP or HTTPS. I turned off windows firewall also with no luck. I checked IIS security settings. It requires 128 bit SSL connection.
|
Group: StrataFrame Developers
Posts: 6.6K,
Visits: 6.9K
|
OK...so this has nothing to do with a query then...it sound smore like a connectivity issue. At this point it sounds like you are not cnnecting to the ES web service then. Once connected, you SHOULD see the MAC addresses of the connected clients. So you might want to start digging around the IIS security permissions as well as any routers, firewalls, etc. that you have around the web server.
|
Group: StrataFrame Users
Posts: 84,
Visits: 835
|
Hi guys, Thanks for the reply. I adjusted the timeout on the SQLCommand to 360. The error actually say "Operation timed out" when I execute the command. Here's the the issue though. I'm returning an empty dataset because the table is empty. (eventually it might have 1000 records though that need to come back for processing). Also when I run the routine, and check status.aspx, it never shows any unique clients connected or anything. When I attempt to connect to the ES, shouldn't it at least show somebody trying to connect? THe timeout on ES is like over a day now. Could something be blocking the request? All the websites over SSL work fine. Any other ideas?
|