Ginj-capture / Ginj

Ginj capture
GNU General Public License v3.0
26 stars 7 forks source link

SetVariableAction error #7

Open vicnevicne opened 4 years ago

vicnevicne commented 4 years ago

@Creamers158 wrote: When I added dropbox and wanted to share a photo I got this error in the log: [ERROR] com.install4j.runtime.beans.actions.control.SetVariableAction [ID 278]: Execute action not successful after 2 ms The upload was succesfull but it appeared that the emailadres was nog verified yet. Maybe adjust the error message for future users. (Also a small typo: Error creatiing shared link -> Error creating shared link.)

vicnevicne commented 4 years ago

Mmmh, com.install4j... seems to indicate the error is due to (or happens in) the launcher created by the installer. It's really strange because it is completely independant from the Dropbox code of course. Or maybe the Exception occurs down inside Dropbox code and bubbles up to the launcher. It's strange anyway because the installer seems to complain about about setting a variable...

If the issue can be reproduced, could you please shutdown Ginj and restart it with "ginj.exe /create-i4j-log" ? It should tell you where the log will be created and, once the error is reproduced, you can post the log here (there shouldn't be much personal information in it, but I would advise you to review it before posting anyway).

Finally, I'm not sure what you mean by "email address was not verified yet". Dropbox (or Google, or many others) authorization uses OAuth2. Initial authorization works by generating a random "challenge" number and forwarding you to a Dropbox page with that challenge. Then you complete the authorization process at Dropbox and it finished by sending back a response containing an authenthorization token which is "the key" (+ a refresh token, because authorization tokens have a validity of a few hours). So the e-mail address is not needed in authentication/authorization (only the token is), but as soon as Ginj gets authorized, it displays user information (name and e-mail) so that the account can be identified and "labeled" (in case you have different accounts, like personal and professional). I mean, the email address is not used for verification at any time. And if there was an issue getting this basic information, I guess uploading would fail for sure, so I don't think it's an authorization issue but more a silly mistake of mine :-).

So it would be great if you could provide more detailed steps to reproduce the issue (don't hesitate to post screenshots here, now that you have a working tool - sort of :-))

Creamers158 commented 4 years ago

I could reproduce it continuously because my new generated dropbox account needed the email verification. (Verify your account to complete your registration message) It can be replicated by creating a new dropbox account but yet not verify the email you get in your emailbox where you signed up with.

I already started with logging on and thats where I found the error log I posted.

java.version=14.0.1 user.dir=C:\Program Files\Ginj os.arch=amd64 java.vm.specification.name=Java Virtual Machine Specification sun.os.patch.level= java.library.path=c:\program files\ginj\jre\bin;C:\Prog... java.vm.info=mixed mode java.vendor=AdoptOpenJDK java.vm.version=14.0.1+7 sun.io.unicode.encoding=UnicodeLittle java.class.version=58.0 exe4j.launchName=C:\Program Files\Ginj.install4j\auto... install4j.swt=false [INFO] Variable changed: sys.resolveUserSpecificInstallationDir=false[class java.lang.String] [INFO] com.install4j.runtime.beans.actions.update.CheckForUpdateAction [ID 277]: Execute action Property connectTimeout: 10000 Property connectionFailureScript: null Property readTimeout: 20000 Property requestHeaders: [] Property url: http://github.com/Ginj-capture/Ginj/releases/latest/download/updates.xml Property variable: updateDescriptor Property acceptAllCertificates: false Property askForProxy: true Property rollbackSupported: false Property showError: false Download: https://github-production-release-asset-2e65be.s3.amazonaws.com/276865084/90eb1400-c89c-11ea-8a2e-525099353c24?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200720%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200720T185640Z&X-Amz-Expires=300&X-Amz-Signature=10e220d1468f14b496fc63dd409b35656ff2b400b17534b2ede729967c724f41&X-Amz-SignedHeaders=host&actor_id=0&repo_id=276865084&response-content-disposition=attachment%3B%20filename%3Dupdates.xml&response-content-type=application%2Foctet-stream to C:\Users\Bart\AppData\Local\Temp\i4jupd1059900008092493565.xml; size: 1325 bytes Variable changed: updateDescriptor=com.install4j.runtime.installer.config.update.UpdateDescriptorImpl@c4ed84[class com.install4j.runtime.installer.config.update.UpdateDescriptorImpl] Execute action successful after 2627 ms [INFO] com.install4j.runtime.beans.actions.control.SetVariableAction [ID 278]: Execute action Property script: com.install4j.script.I4jScript_Internal_271 Property variableName: updateDescriptorEntry Property failIfNull: true Property onlyIfUndefined: false Property responseFileVariable: false Property rollbackSupported: false [ERROR] com.install4j.runtime.beans.actions.control.SetVariableAction [ID 278]: Execute action not successful after 2 ms [INFO] Canceled

vicnevicne commented 4 years ago

Dropbox issue: Oh, OK, I can see the issue now. You are attempting to link Ginj with a not-yet-activated Dropbox account. That is definitely a corner case :-) but I will try to reproduce it in the next few days. I'm opening dedicated issue #9 about it.

As for the other error, I think it's completely unrelated. The part showing the error is the code responsible for auto-updating. I found the variable in question but it was auto-generated and I didn't see anything obvious in the installer. Found a few references about that error on Google but not really the same context, or no solution... Could you launch Ginj normally and see if it prompts you to update or not ? If it does, does the auto-update complete (the "About" box should show 0.3.5 then) ? If not, can you update manually, restart with the logging option and see if the message is still there ? Thanks for your help.

Creamers158 commented 4 years ago

After starting Ginj again it started the update procedure. Worked like a charm and showing 0.3.5. Question though, as I normally never restart my laptop (sleep/hybernate) or Gin, will it alert me if an update is available to start this process :) ?

vicnevicne commented 4 years ago

OK. Good to know update worked as intended. I don't have any integration of update mechanism inside Ginj yet. I might add it in the future but it's not in hi-priority list as it works more or less :-) Can you check if you still have the message in the logs with that new version ? Thanks.

vicnevicne commented 4 years ago

(Note: removed "when uploading to Dropbox." in the title as I believe it's not related. Will re-add if needed)

Creamers158 commented 4 years ago

I restarted using the log mode. Looking at i4j_log_Ginj_1136046605085591620.log it still gives this error:

[ERROR] com.install4j.runtime.beans.actions.control.SetVariableAction [ID 278]: Execute action not successful after 3 ms

Looking at i4j_nlog_5.log it shows this: [1:682] load helper dll [1:684] helper dll 0000000180000000 C:\Program Files\Ginj..install4j\i4jinst.dll [1:732] setting exe4j.moduleName to C:\Program Files\Ginj\Ginj.exe [1:733] main class: com/install4j/runtime/launcher/WinLauncher [1:734] expanding2 ${launcher:sys.launcherDirectory} to C:\Program Files\Ginj\ in C:\Program Files\Ginj\error.log. [1:736] param count: 6 [1:737] param 0: true [1:738] param 1: info.ginj.Ginj [1:738] param 2: C:\Program Files\Ginj\error.log [1:739] param 3: [1:740] param 4: true [1:740] param 5: ginj.exe [1:741] calling main [2:644] main returned [2:645] dest JVM

Creamers158 commented 4 years ago

(Note: removed "when uploading to Dropbox." in the title as I believe it's not related. Will re-add if needed)

I think the Share button it should not show the Manage again. Managing and setting upload targets can be done at config level. Now I sometimes 'miss click' as I want to upload. M2c

vicnevicne commented 4 years ago

Regarding the SetVariableAction error, unless it is blocking something for you, I would put the issue in low priority. Is it OK for you ? And regarding the Share button, I agree that it is strange to have two ways to reach Target Configuration but that was the way Jing did it (just I didn't have time to work on the "round wrench" button). image Can you open a dedicated issue regarding this ?

Oh, and in the meantime, I can give you a secret trick to try:

Creamers158 commented 4 years ago

Sure, I've no problem with this. So far it works for me.

Nice!!!
smallbutton