[JBoss JIRA] (JBIDE-13552) BrowserSim: Ripple integration
by Vlado Pakan (JIRA)
[ https://issues.jboss.org/browse/JBIDE-13552?page=com.atlassian.jira.plugi... ]
Vlado Pakan updated JBIDE-13552:
--------------------------------
Attachment: captureaudio.png
> BrowserSim: Ripple integration
> ------------------------------
>
> Key: JBIDE-13552
> URL: https://issues.jboss.org/browse/JBIDE-13552
> Project: Tools (JBoss Tools)
> Issue Type: Feature Request
> Components: browsersim
> Reporter: Yahor Radtsevich
> Assignee: Yahor Radtsevich
> Fix For: 4.1.0.Beta1
>
> Attachments: captureaudio.png
>
>
> Ripple is an emulator, which provides mobile environment (such as Cordova API) to HTML applications.
> Ripple extension for Chrome is written in HTML/JavaScript with usage of Chrome extensions API and some Chrome-only API. When run as an extension, Ripple looks like a mobile iframe in the center of a browser window, and several controls around this iframe, including Geolocation, Orientation and Messaging. These controls allow to change "answers" for queries to emulated API.
> *On the high level our plan is to:*
> 1. get rid of dependencies to Chrome extensions API and Chrome-only API
> 2. replace the mobile iframe with BrowserSim popup window
> 3. implement missing pieces
> 4. replace some Ripple controls with BrowserSim controls
> 5. integrate our Ripple-BrowserSim simulator in Eclipse
> 6. other issues
> *More details follow:*
> *1. get rid of dependencies to Chrome extensions API and Chrome-only API*
> This includes:
> - allow Ripple code to access {{window}} and {{document}} objects of Cordova applications. _*Resolved* by hosting Ripple and Cordova applications on the same Jetty server_
> - allowing cross-origin XHR from BrowserSim. _We *resolved* this by implementation of a Jetty-based proxy_
> - Web SQL API is deprecated and it is not available in BrowserSim on Windows. _We *resolved* it by our own implementation of this API in pure JavaScript JBIDE-13813._
> - allow to upload files to simulate Cordova Camera API. The problem is that some Chrome API is not available in BrowserSim (an example is {{window.URL.createObjectURL(blob)}}). _We *resolved* it by an upload file servlet in Jetty_
> *2. replace the mobile iframe with BrowserSim popup window*
> - there is bug in SWT which leads to multiple popups being opened instead of one. _*Resolved.* We already found a workaround for it_
> - iframe should be removed from the control page. _*Resolved*. The iframe all JS dependencies to it are removed._
> - need a way to change BrowserSim skin while running as popup. The problem is that when the skin is changing, we loose connection with the parent window. _*Resolved*. Now we refresh the parent window after the skin is changed. After refresh the parent window tries to open a new popup, and we connect already created new skin to it.*_
> *3. implement missing pieces*
> - Compas API does not work in both CordovaSim and original Ripple. *Resolved* actually it works - bad demo sample
> - Capture API (audio and video recording using an external app) does not work in both CordovaSim and original Ripple *Resolved* JBIDE-14300
> - Media API (audio playback and recording) does not work in CordovaSim now (not sure if it works in original Ripple) *Not a bug* JBIDE-14306
> - Bar code scanner? *Resolved* JBIDE-14362
> *4. replace some Ripple controls with BrowserSim controls*
> - the {{backbutton}} event should be fired when user presses the Back button in BrowserSim. _*Resolved*_
> - Ripple's orientation change should be replaced by BrowserSim's one. _*Resolved*_
> *5. integrate our Ripple-BrowserSim simulator in Eclipse*
> - provide an easy way to run our simulator from Eclipse, probably add something like "Open in CordovaSim" toolbar item/context menu *Resolved* JBIDE-14083
> *6. other issues*
> - CordovaSim should show an error if jetty port is not available. _*Resolved*_
> - A bug: if there are two Cordova projects in the workspace with {{index.html}} and we run CordovaSim for both these projects, than only one of the {{index.html}} files may be showed in both cases. The problem is that by default Jetty allows the {{If-modified-since}} header and the file with an earlier modification date will never be returned. _*Resolved* by not returning this header._
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 10 months
[JBoss JIRA] (JBIDE-13552) BrowserSim: Ripple integration
by Vlado Pakan (JIRA)
[ https://issues.jboss.org/browse/JBIDE-13552?page=com.atlassian.jira.plugi... ]
Vlado Pakan commented on JBIDE-13552:
-------------------------------------
Capturing Audio is not working? Is it ok or should I create separate Jira for it or reopen this one? JBT Beta1-v20130526-0812-B258 on Linux
!captureaudio.png!
> BrowserSim: Ripple integration
> ------------------------------
>
> Key: JBIDE-13552
> URL: https://issues.jboss.org/browse/JBIDE-13552
> Project: Tools (JBoss Tools)
> Issue Type: Feature Request
> Components: browsersim
> Reporter: Yahor Radtsevich
> Assignee: Yahor Radtsevich
> Fix For: 4.1.0.Beta1
>
>
> Ripple is an emulator, which provides mobile environment (such as Cordova API) to HTML applications.
> Ripple extension for Chrome is written in HTML/JavaScript with usage of Chrome extensions API and some Chrome-only API. When run as an extension, Ripple looks like a mobile iframe in the center of a browser window, and several controls around this iframe, including Geolocation, Orientation and Messaging. These controls allow to change "answers" for queries to emulated API.
> *On the high level our plan is to:*
> 1. get rid of dependencies to Chrome extensions API and Chrome-only API
> 2. replace the mobile iframe with BrowserSim popup window
> 3. implement missing pieces
> 4. replace some Ripple controls with BrowserSim controls
> 5. integrate our Ripple-BrowserSim simulator in Eclipse
> 6. other issues
> *More details follow:*
> *1. get rid of dependencies to Chrome extensions API and Chrome-only API*
> This includes:
> - allow Ripple code to access {{window}} and {{document}} objects of Cordova applications. _*Resolved* by hosting Ripple and Cordova applications on the same Jetty server_
> - allowing cross-origin XHR from BrowserSim. _We *resolved* this by implementation of a Jetty-based proxy_
> - Web SQL API is deprecated and it is not available in BrowserSim on Windows. _We *resolved* it by our own implementation of this API in pure JavaScript JBIDE-13813._
> - allow to upload files to simulate Cordova Camera API. The problem is that some Chrome API is not available in BrowserSim (an example is {{window.URL.createObjectURL(blob)}}). _We *resolved* it by an upload file servlet in Jetty_
> *2. replace the mobile iframe with BrowserSim popup window*
> - there is bug in SWT which leads to multiple popups being opened instead of one. _*Resolved.* We already found a workaround for it_
> - iframe should be removed from the control page. _*Resolved*. The iframe all JS dependencies to it are removed._
> - need a way to change BrowserSim skin while running as popup. The problem is that when the skin is changing, we loose connection with the parent window. _*Resolved*. Now we refresh the parent window after the skin is changed. After refresh the parent window tries to open a new popup, and we connect already created new skin to it.*_
> *3. implement missing pieces*
> - Compas API does not work in both CordovaSim and original Ripple. *Resolved* actually it works - bad demo sample
> - Capture API (audio and video recording using an external app) does not work in both CordovaSim and original Ripple *Resolved* JBIDE-14300
> - Media API (audio playback and recording) does not work in CordovaSim now (not sure if it works in original Ripple) *Not a bug* JBIDE-14306
> - Bar code scanner? *Resolved* JBIDE-14362
> *4. replace some Ripple controls with BrowserSim controls*
> - the {{backbutton}} event should be fired when user presses the Back button in BrowserSim. _*Resolved*_
> - Ripple's orientation change should be replaced by BrowserSim's one. _*Resolved*_
> *5. integrate our Ripple-BrowserSim simulator in Eclipse*
> - provide an easy way to run our simulator from Eclipse, probably add something like "Open in CordovaSim" toolbar item/context menu *Resolved* JBIDE-14083
> *6. other issues*
> - CordovaSim should show an error if jetty port is not available. _*Resolved*_
> - A bug: if there are two Cordova projects in the workspace with {{index.html}} and we run CordovaSim for both these projects, than only one of the {{index.html}} files may be showed in both cases. The problem is that by default Jetty allows the {{If-modified-since}} header and the file with an earlier modification date will never be returned. _*Resolved* by not returning this header._
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 10 months
[JBoss JIRA] (JBIDE-13075) Openshift Wizard should ask "would you like to push your project"?
by Stefan Bunciak (JIRA)
[ https://issues.jboss.org/browse/JBIDE-13075?page=com.atlassian.jira.plugi... ]
Stefan Bunciak closed JBIDE-13075.
----------------------------------
Verified in JBoss Developer Studio 7.0.0.Beta1a
> Openshift Wizard should ask "would you like to push your project"?
> ------------------------------------------------------------------
>
> Key: JBIDE-13075
> URL: https://issues.jboss.org/browse/JBIDE-13075
> Project: Tools (JBoss Tools)
> Issue Type: Feature Request
> Components: openshift
> Affects Versions: 4.0.0.Beta2
> Reporter: Burr Sutter
> Assignee: Andre Dietisheim
> Labels: new_and_noteworthy
> Fix For: 4.1.0.Beta1
>
> Attachments: 1-local-change.png, clone-is-ahead.png, commit-when-importing.png, commited-changes-that-were-not-pushed.png, no_changes_yes.png, pushing-if-no-changes.png
>
>
> I believe the end-user will rarely remember to perform a git push once he has completed the OpenShift New Application Wizard - it is totally "not obvious" that is what is the next step - especially when the end-user is warned away from a push (see screenshot).
> In JBIDE-12122 Fred suggested the following:
> {quote}
> When creating an new openshift application from an existing workspace project, I expect my project to be deployed automatically once the Openshift app is created.
> Since not all projects are openshift-ready, we should have a checkbox on the openshift wizard (enabled when using an existing project) that basically says "deploy my app once created".
> The state of that checkbox should be stored in the workspace preferences.
> And obviously, when the box is checked, the local git repo would be pushed after the openshift app is created.
> Workflow should be :
> * create a project 'myapp' from JBoss Central (say HTML5)
> * create a new OpenShift application 'myapp', based on the jbossas7 cartridge, using the existing 'myapp' project
> * check the deploy checkbox
> * once the myapp.<mydomain>.rhcloud.com server is ready, Opening http://myapp.<mydomain>.rhcloud.com should display the HTML5 app
> {quote}
> To verify this do the following:
> *1)* import existing OpenShift application to your workspace:
> -> You should get prompted to *publish* local changes since local clone is ahead of the remote (we changed the .gitignore)
> !commited-changes-that-were-not-pushed.png!
> *2)* once you published the new application back to OpenShift, delete the project from your workspace and import it again.
> -> You should *NOT* get prompted to publish it since the import has not done any further changes (we did not modify anything that's not already on OpenShift)
> *3)* import your OpenShift application to your workspace again. Since you already have the project in your workspace, you'll have to tell the wizard to import into your existing workspace project
> -> You should *NOT* get prompted to publish since there are no new changes that were applied
> *4)* Create a new OpenShift application and then import it into the first project.
> -> You should get prompted to *publish* since we now applied changes that need to get published.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 10 months
[JBoss JIRA] (JBIDE-13485) Restart server with "Web Port" pollers sometimes does not work
by Rob Stryker (JIRA)
[ https://issues.jboss.org/browse/JBIDE-13485?page=com.atlassian.jira.plugi... ]
Rob Stryker commented on JBIDE-13485:
-------------------------------------
cannot replicate with web port poller, but can replicate with jmx.
Issue seems to be caused by two threads independently setting server state to stopped. One thread is the poller, the other is the one that recognizes the process was stopped.
The wtp start job (of the restart action) kicks off the moment a server is set to stopped, server gets set to 'starting' with new launch, and then the other thread sets it to stopped.
Will investigate a fix.
> Restart server with "Web Port" pollers sometimes does not work
> --------------------------------------------------------------
>
> Key: JBIDE-13485
> URL: https://issues.jboss.org/browse/JBIDE-13485
> Project: Tools (JBoss Tools)
> Issue Type: Bug
> Components: server
> Affects Versions: 4.0.0.Final
> Reporter: Radim Hopp
> Assignee: Rob Stryker
> Fix For: 4.1.0.Beta2
>
>
> Restart server sometimes does not work, when startup and shutdown pollers are set up to Web Port. I have tried it with JBossAS 7.1, EAP 5 and EAP 6.
> My swt bot tests have very high probability of reproducing this issue. Few times I managed to reproduce it myself without swtbot test.
> When restart is evoked, server is properly shut down and then started up, but "Server AS-7.1 failed to start" and server in servers view remains in Stopped state (althoug it's starting, or already started).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 10 months
[JBoss JIRA] (JBIDE-14679) Cannot create OpenShift Server Adapter
by Andre Dietisheim (JIRA)
[ https://issues.jboss.org/browse/JBIDE-14679?page=com.atlassian.jira.plugi... ]
Andre Dietisheim updated JBIDE-14679:
-------------------------------------
Component/s: (was: server)
> Cannot create OpenShift Server Adapter
> --------------------------------------
>
> Key: JBIDE-14679
> URL: https://issues.jboss.org/browse/JBIDE-14679
> Project: Tools (JBoss Tools)
> Issue Type: Bug
> Components: openshift
> Affects Versions: 4.1.0.Beta1
> Environment: JBoss Developer Studio 7.0.0.Beta1a
> Reporter: Stefan Bunciak
> Assignee: Andre Dietisheim
> Priority: Critical
> Attachments: out-1.ogv, out.ogv
>
>
> {code}
> java.lang.NullPointerException
> at org.jboss.tools.openshift.express.internal.core.behaviour.ExpressServerUtils.getDefaultDeployFolder(ExpressServerUtils.java:270)
> at org.jboss.tools.openshift.express.internal.core.behaviour.ExpressServerUtils.getExpressDeployFolder(ExpressServerUtils.java:220)
> at org.jboss.tools.openshift.express.internal.ui.behaviour.ExpressDetailsComposite.initModel(ExpressDetailsComposite.java:147)
> at org.jboss.tools.openshift.express.internal.ui.behaviour.ExpressDetailsComposite.<init>(ExpressDetailsComposite.java:125)
> at org.jboss.tools.openshift.express.internal.ui.behaviour.ExpressWizardFragment.createComposite(ExpressWizardFragment.java:62)
> at org.eclipse.wst.server.ui.internal.wizard.TaskWizardPage.createControl(TaskWizardPage.java:43)
> at org.eclipse.jface.wizard.WizardDialog.updateForPage(WizardDialog.java:1246)
> at org.eclipse.jface.wizard.WizardDialog.access$4(WizardDialog.java:1238)
> at org.eclipse.jface.wizard.WizardDialog$8.run(WizardDialog.java:1227)
> at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
> at org.eclipse.jface.wizard.WizardDialog.showPage(WizardDialog.java:1225)
> at org.eclipse.jface.wizard.WizardDialog.nextPressed(WizardDialog.java:915)
> at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:428)
> at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:628)
> at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392)
> at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3742)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3363)
> at org.eclipse.jface.window.Window.runEventLoop(Window.java:826)
> at org.eclipse.jface.window.Window.open(Window.java:802)
> at org.eclipse.wst.server.ui.internal.cnf.ServersView2$1.widgetSelected(ServersView2.java:116)
> at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1392)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1416)
> at org.eclipse.swt.widgets.Widget.sendSelectionEvent(Widget.java:1530)
> at org.eclipse.swt.widgets.Link.gtk_button_release_event(Link.java:361)
> at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:2079)
> at org.eclipse.swt.widgets.Control.windowProc(Control.java:5430)
> at org.eclipse.swt.widgets.Display.windowProc(Display.java:4569)
> at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
> at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:8707)
> at org.eclipse.swt.widgets.Display.eventProc(Display.java:1243)
> at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
> at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:2287)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3361)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1109)
> at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:993)
> at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
> at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
> at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
> at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
> at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
> at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
> at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
> at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
> at org.eclipse.equinox.launcher.Main.main(Main.java:1426)
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 10 months