Exception while uploading file to S3 .Net SDK - amazon-web-services

I have written a small uploader to upload files using AWS S3 .NET SDK. It works fine on my computer. When I tried it on the two of the client computers, it throws exceptions.My dev machine and the client machine are running Windows 7. I tried couple of other computers, the program works fine. It is a very simple program, reads a file and calls the SDK API to upload it. The exception I am getting are:
Faulting application name: AWSUploader.exe, version: 1.0.0.0, time stamp: 0x56df54b2
Faulting module name: KERNELBASE.dll, version: 6.1.7601.23313, time stamp: 0x56842940
Exception code: 0xe0434352
Fault offset: 0x0000c44d
Faulting process id: 0x1594
Faulting application start time: 0x01d1798c224555b4
Faulting application path: C:\Users\ama06v\Desktop\Debug\Debug\AWSUploader.exe
Faulting module path: C:\WINDOWS\syswow64\KERNELBASE.dll
Report Id: 602f959e-e57f-11e5-a925-70f39532fcec
Application: AWSUploader.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: Amazon.Runtime.AmazonServiceException
Stack:
at Amazon.Runtime.Internal.ErrorCallbackHandler.InvokeSync(Amazon.Runtime.IExecutionContext)
at Amazon.Runtime.Internal.PipelineHandler.InvokeSync(Amazon.Runtime.IExecutionContext)
at Amazon.Runtime.Internal.MetricsHandler.InvokeSync(Amazon.Runtime.IExecutionContext)
at Amazon.Runtime.Internal.RuntimePipeline.InvokeSync(Amazon.Runtime.IExecutionContext)
at Amazon.Runtime.AmazonServiceClient.Invoke[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]](System.__Canon, Amazon.Runtime.Internal.Transform.IMarshaller`2<Amazon.Runtime.Internal.IRequest,Amazon.Runtime.AmazonWebServiceRequest>, Amazon.Runtime.Internal.Transform.ResponseUnmarshaller)
at Amazon.S3.AmazonS3Client.InitiateMultipartUpload(Amazon.S3.Model.InitiateMultipartUploadRequest)
at s3.amazon.com.docsamples.UploadFileMPULowLevelAPI.Main(System.String[])
I have opened a ticket with AWS, they are looking into it, so far no answer form them.
I am using the latest AWS SDK from NuGet 3.2.2
Thanks for any help.

After researching a lot, found out that the exception I was getting is an uncaught exception. This exception has nothing to do with the KERNELBASE.dll, this is not the culprit, although it looks like. So I added a handler for unhandled exception not knowing where the exception was happening like this:
AppDomain currentDomain = AppDomain.CurrentDomain;
currentDomain.UnhandledException += new UnhandledExceptionEventHandler(MyHandler);
Handler
static void MyHandler(object sender, UnhandledExceptionEventArgs args)
{
Exception e = (Exception)args.ExceptionObject;
Console.WriteLine(e);
Console.ReadLine();
}
That handler produced the following exception (truncated):
MyHandler caught : A WebException with status ProtocolError was thrown.
Amazon.Runtime.AmazonServiceException: A WebException with status Protocol Error was thrown. ---> System.Net.WebException: The remote server returned an error: (407) Proxy Authentication Required.
at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)
at System.Net.HttpWebRequest.GetRequestStream()
at Amazon.Runtime.Internal.HttpRequest.GetRequestContent()
......
......
Basically the hospital system had a proxy server that was blocking our request to AWS!! Needed to login to the Proxy server as the defualt logged in user. For that you add the following line to the app.config.
<system.net>
<defaultProxy useDefaultCredentials=”true”> </defaultProxy>
</system.net>
I hope this helps somebody.

Related

QBFC - Faulting module name: ucrtbase.DLL Exception code: 0xc0000409

(I have solved this. Posting it in case someone else is having this issue.)
I have an application that integrates with Quickbooks using the QBFC13 library. It all works great when running the application from Visual Studio. However, after publishing and installing as a ClickOnce application, the app crashes when calling the SessionManager.OpenConnection method.
The following is the EventViewer entry:
Faulting application name: ******.exe, version: 1.0.0.0, time stamp: 0x5c9bc8e2
Faulting module name: ucrtbase.dll, version: 10.0.17763.348, time stamp: 0x93e4fbe5
Exception code: 0xc0000409
Fault offset: 0x000a3652
Faulting process id: 0x47d4
Faulting application start time: 0x01d4e4dd895421ae
Faulting application path: C:\temp\test****.exe
Faulting module path: C:\Windows\System32\ucrtbase.dll
Report Id: a081e5b3-502b-4591-9fc7-429d5658dba4
Faulting package full name:
Faulting package-relative application ID:
Turn off ClickOnce signing. Double click Properties. Then go to Signing tab and uncheck "Sign the ClickOnce Manifest".
I haven't figured out why this is a problem, but after switching it off and publishing again, the problem disappeared.

Experience editor not working Sitecore 8.2

In a instance of sitecore 8.2 version, when I try to open experience editor for any item under content, it gives me following error.
Log:
2756 15:55:04 ERROR Application error.
Exception: System.Web.HttpException
Message: Path '/' was not found.
Source: System.Web
at System.Web.HttpNotFoundHandler.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
seeing the below error too:
8248 18:23:03 WARN Authentication on CES Discovery service failed.
Exception: System.Net.WebException
Message: The remote server returned an error: (403) Forbidden.
Source: System
at System.Net.HttpWebRequest.GetResponse()
at Sitecore.CES.Client.WebClient.ExecuteRequest(String requestUri)
at Sitecore.CES.Client.ResourceConnector`1.Request(String endpoint, Object[] parameters)
at Sitecore.CES.Discovery.EndpointSource.GetEndpoint(String serviceName)
Try to upgrade your .NET Framework version to at least 4.5.2. See the compatibility table:
https://kb.sitecore.net/articles/087164

Web deploy issue with sitecore media files

I am using File system for media and trying to get Web Deploy to work between CM and CD but running into issue when I try to publish media item.
My WebDeploy.config looks like this:
<targetDatabase>web</targetDatabase>
<targetServer>cd-site</targetServer>
<userName>Administrator</userName>
<password>pwd</password>
<localRoot>C:\inetpub\wwwroot\CM\Website</localRoot>
<remoteRoot>C:\inetpub\wwwroot\CD\Website</remoteRoot>
<items hint="list:AddPath">
<media>App_Data/MediaFiles</media>
</items>
I cant seem to get pass this error in sitecore after publish, any ideas?:
5652 02:01:11 INFO Job started: Publish to 'web'
ManagedPoolThread #13 02:01:11 INFO MSDEPLOY: Performing synchronization for App_Data/MediaFiles
ManagedPoolThread #13 02:01:11 ERROR MSDEPLOY: Failed to synchronize folder App_Data/MediaFiles. Please verify that the folder exists and is accessible.
Exception: Microsoft.Web.Deployment.DeploymentAgentUnavailableException: Remote agent (URL http://cd-site/MSDEPLOYAGENTSERVICE) could not be contacted. Make sure the remote agent service is installed and started on the target computer. ---> Microsoft.Web.Deployment.DeploymentException: An unsupported response was received. The response header 'MSDeploy.Response' was '' but 'v1' was expected. ---> System.Net.WebException: The remote server returned an error: (401) Unauthorized.
at System.Net.HttpWebRequest.GetResponse()
at Microsoft.Web.Deployment.AgentClientProvider.GetHttpResponse(HttpWebRequest request)
--- End of inner exception stack trace ---
--- End of inner exception stack trace ---
at Microsoft.Web.Deployment.AgentClientProvider.GetHttpResponse(HttpWebRequest request)
at Microsoft.Web.Deployment.AgentClientProvider.CreateStatusThread(DeploymentSyncContext syncContext)
at Microsoft.Web.Deployment.AgentClientProvider.RemoteDestSync(DeploymentObject sourceObject, DeploymentSyncContext syncContext)
at Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject destObject, DeploymentSyncOptions syncOptions, PayloadTable payloadTable, ContentRootTable contentRootTable)
at Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentProviderOptions providerOptions, DeploymentBaseOptions baseOptions, DeploymentSyncOptions syncOptions)
at Sitecore.Publishing.WebDeploy.DeploymentTaskRunner.Execute()
I fixed this by installing Web Deploy from WebPI. For some reason when I only installed Web Deploy 3.6 independently the services were not registered properly. After installing via WebPI the publishing job instantly started working.

If dontdisplaylastusername is turned on, loginui.exe keeps crashing with Microsoft credential provider V2 sample

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"dontdisplaylastusername"=dword:00000001
I was trying to build a custom V2 Credential Provider and basing it off of Microsoft's code sample. The custom credential provider works as expected in most scensrios. However, if I enable the following setting dontdisplaylastusername, either through policy or by setting this registry setting and try to go to the login screen, the cursor just spins and the screen just flashes and I am never able to get the login screen to come up. Without any custom v2 credential providers installed, I am able to get to the Other User screen correctly.
How can I fix this? I tried adding a username field to my custom version since Microsoft's version did not have one but that did not change anything and still crashed.
Any ideas?
This is the github repo I was using for the sample
Here is an example of the fault that is logged for the sample credential provider.
Fault bucket , type 0
Event Name: APPCRASH
Response: Not available
Cab Id: 0
Problem signature:
P1: LogonUI.exe
P2: 10.0.10586.0
P3: 5632d88c
P4: SampleV2CredentialProvider.dll
P5: 0.0.0.0
P6: 56cc64dd
P7: c0000005
P8: 0000000000003086
P9:
P10:
Attached files:
These files may be available here:
C:\ProgramData\Microsoft\Windows\WER\ReportQueue\AppCrash_LogonUI.exe_5e45fd9b49f0ea6611374ae56677dfa1cb3a1fe_9798b224_0a4ffaf8
Analysis symbol:
Rechecking for solution: 0
Report Id: 5efbdb96-de9f-4254-b259-1beea7137fc7
Report Status: 96
Faulting application name: LogonUI.exe, version: 10.0.10586.0, time stamp: 0x5632d88c
Faulting module name: SampleV2CredentialProvider.dll, version: 0.0.0.0, time stamp: 0x56cc64dd
Exception code: 0xc0000005
Fault offset: 0x0000000000003086
Faulting process id: 0x3a8
Faulting application start time: 0x01d1910e42a0efb5
Faulting application path: C:\Windows\system32\LogonUI.exe
Faulting module path: C:\Windows\system32\SampleV2CredentialProvider.dll
Report Id: 038f9265-0f6f-45fa-bc3e-6c7de490ca34
Faulting package full name:
Faulting package-relative application ID:

NoClassDefFoundError: com.ibm.ws.wstx.handler.WSATGenerator

I'm using the web client for web service. Client stub is generated with Axis 2. Everything is deployed on WebSphere 7.0.
When deployed on my developer machine (websphere instance run inside IBM RAD Eclipse) I'm connected with remote web service. However, on test machine, the error is thrown:
java.lang.NoClassDefFoundError: com.ibm.ws.wstx.handler.WSATGenerator (initialization failure)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:140)
at com.ibm.ws.wstx.WSTXClientTCMImpl.handleInbound(WSTXClientTCMImpl.java:100)
at com.ibm.ws.wstx.WSTXClientTCMImpl.cleanupContext(WSTXClientTCMImpl.java:81)
at org.apache.axis2.util.ThreadContextMigratorUtil.performContextCleanup(ThreadContextMigratorUtil.java:192)
at org.apache.axis2.jaxws.core.controller.impl.AxisInvocationController.postExecute(AxisInvocationController.java:657)
at org.apache.axis2.jaxws.core.controller.impl.AxisInvocationController.execute(AxisInvocationController.java:589)
at org.apache.axis2.jaxws.core.controller.impl.AxisInvocationController.doInvoke(AxisInvocationController.java:130)
at org.apache.axis2.jaxws.core.controller.impl.InvocationControllerImpl.invoke(InvocationControllerImpl.java:93)
at org.apache.axis2.jaxws.client.proxy.JAXWSProxyHandler.invokeSEIMethod(JAXWSProxyHandler.java:364)
at org.apache.axis2.jaxws.client.proxy.JAXWSProxyHandler.invoke(JAXWSProxyHandler.java:185)
at $Proxy94.getList(Unknown Source)
The ear that is deployed there is made by me on my development machine, so it's exactly the same code. So I suppose that it's some configuration issue. However, I have no idea, what part of configuration can be responsible for that.
So, I have the question, what is this WSATGenerator, and in which jar it should be available? Is it a standard library on WebSphere, or must it be manually configured? What configuration differences could cause that error thrown on test server and no by me?
I'm running Windows 7, the test machine is on Unix. Both machines are 64bit.
--edit--
Before NoClassDefFoundError, there is throws ExceptionInInitializerError:
java.lang.ExceptionInInitializerError
at java.lang.J9VMInternals.initialize(J9VMInternals.java:222)
at com.ibm.ws.wstx.handler.WSATGenerator.<clinit>(WSATGenerator.java:127)
at java.lang.J9VMInternals.initializeImpl(Native Method)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
at com.ibm.ws.wstx.WSTXClientTCMImpl.migrateThreadToContext(WSTXClientTCMImpl.java:61)
at org.apache.axis2.util.ThreadContextMigratorUtil.performMigrationToContext(ThreadContextMigratorUtil.java:163)
at org.apache.axis2.jaxws.core.controller.impl.AxisInvocationController.preExecute(AxisInvocationController.java:608)
at org.apache.axis2.jaxws.core.controller.impl.AxisInvocationController.execute(AxisInvocationController.java:570)
... 82 more
Caused by:
java.lang.ClassCastException: com.systinet.jaxrpc.rpc.ServiceFactoryImpl incompatible with com.ibm.wsspi.webservices.rpc.ServiceFactory
at com.ibm.ws.Transaction.wstx.WSATServices$1.run(WSATServices.java:83)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:63)
at com.ibm.ws.Transaction.wstx.WSATServices.<clinit>(WSATServices.java:74)
at java.lang.J9VMInternals.initializeImpl(Native Method)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
... 89 more