Uberfire

http://uberfireframework.org/

Docs : http://uberfireframework.org/docs/

0.9.x :

Quickstart

 mvn archetype:generate -B \
-DarchetypeGroupId=org.uberfire \
-DarchetypeArtifactId=uberfire-project-archetype \
-DarchetypeVersion=1.0.0.Beta1 \
-DgroupId=org.uberfire \
-DartifactId=demo \
-Dversion=1.0-SNAPSHOT \
-Dpackage=org.uberfire \
-DcapitalizedRootArtifactId=Demo
$ mvn clean install
$ cd demo-showcase/demo-webapp
$ mvn clean gwt:run
 mvn archetype:generate -B \
-DarchetypeGroupId=org.uberfire \
-DarchetypeArtifactId=uberfire-project-archetype \
-DarchetypeVersion=0.9.0.Final \
-DgroupId=org.uberfire \
-DartifactId=demo090 \
-Dversion=1.0-SNAPSHOT \
-Dpackage=org.uberfire \
-DcapitalizedRootArtifactId=Demo090

Improving Your First App

http://uberfireframework.org/docs/gettingStarted/improvingYourFirstApp.html

  • 最新の archetype (1.0.0.Beta1) でやること。0.9.0.Final ではエラーになる
  • MoodPerspective のコンパイルで問題あり。MainPerspective を参考に、@WorkbenchPanel ではなく APIで組み立てたら動いた。
    @Perspective
    public PerspectiveDefinition buildPerspective() {
        final PerspectiveDefinition p = new PerspectiveDefinitionImpl( MultiListWorkbenchPanelPresenter.class.getName() );
        p.setName( "MoodPerspective" );

        p.getRoot().addPart( new PartDefinitionImpl( new DefaultPlaceRequest( "MoodScreen" ) ) );
        
        final PanelDefinition east = new PanelDefinitionImpl( SimpleWorkbenchPanelPresenter.class.getName() );
        east.setWidth( 400 );
        east.addPart( new PartDefinitionImpl( new DefaultPlaceRequest( "MoodListenerScreen" ) ) );
        
        p.getRoot().insertChild(CompassPosition.EAST, east );

        return p;
    }

ポイント

  • EntryPoint : menu を作る
  • Perspective -> Panel -> Screen

Errai

http://erraiframework.org/

Docs : http://docs.jboss.org/errai/3.2.4.Final/errai/reference/html_single/

Quickstart

http://www.mastertheboss.com/jboss-frameworks/errai/errai-quickstart-tutorial

mvn archetype:generate \
-DarchetypeGroupId=org.jboss.errai.archetypes \
-DarchetypeArtifactId=bus-quickstart \
-DarchetypeVersion=2.2.0.Final \
-DarchetypeRepository=https://repository.jboss.org/nexus/content/groups/public/

Old GWT dev mode no longer supported in recent browsers so gwt:run won't work. Just deploy a WAR to Wildfly or EAP.

mvn archetype:generate \
-DarchetypeGroupId=org.jboss.errai.archetypes \
-DarchetypeArtifactId=cdi-quickstart \
-DarchetypeVersion=2.3.2.Final \
-DarchetypeRepository=https://repository.jboss.org/nexus/content/groups/public/
$ mvn -Pjboss7 clean install

Debug

http://docs.jboss.org/errai/latest/errai/reference/html_single/#_running_and_debugging_in_your_ide_using_gwt_tooling

If you wish to debug your client-side JavaScript as Java code from within Eclipse, 
you will need to use the SDBG plugin for GWT Super Dev Mode. 
More information can be found here:

http://sdbg.github.io/
you may be prompted for a "WAR Directory Selection". 
Choose the "web/target/m2e-wtp/web-resources" directory in your project root.

Super Dev Mode を Chrome で debug

直接 127.0.0.1:9876 にアクセスすると、「Dev Mode On」「Dev Mode Off」のブックマークレットが貰えるけど必要無いかな?

Trouble shooting

mvn gwt:run でブラウザにGWTプラグインがないと怒られる

古いバージョンの Errai/GWT の場合、 gwt:run ではなく、Wildfly/EAP にデプロイする

mvn gwt:run で起動しない
[ERROR] Unable to start embedded HTTP server
[ERROR] java.lang.NullPointerException
[ERROR] 	at org.jboss.errai.cdi.server.as.JBossServletContainerAdaptor.stopHelper(JBossServletContainerAdaptor.java:261)
[ERROR] 	at org.jboss.errai.cdi.server.as.JBossServletContainerAdaptor.<init>(JBossServletContainerAdaptor.java:155)
[ERROR] 	at org.jboss.errai.cdi.server.as.JBossServletContainerAdaptor.<init>(JBossServletContainerAdaptor.java:58)
[ERROR] 	at org.jboss.errai.cdi.server.gwt.EmbeddedWildFlyLauncher.start(EmbeddedWildFlyLauncher.java:80)
[ERROR] 	at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:632)
[ERROR] 	at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1054)
[ERROR] 	at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:836)
[ERROR] 	at com.google.gwt.dev.DevMode.main(DevMode.java:413)
export JBOSS_HOME=

を忘れるな

サーバー側からのイベントがクライアントの @Observes に送られない

CDI 1.0 (e.g. EAP 6.x) では errai-weld-integration のバージョンを 3.0.6.Final-redhat-1 にする

ポイント

  • Errai Bus という仕組みが肝。クライアント、サーバ間で非同期にメッセージのやり取りをする。
    • クライアントから "XXXX.erraiBus" というURLでアクセスされる。サーバ側は DefaultBlockingServlet が受け付ける
  • クライアント/サーバにまたがって CDI/Event をサポート。通常の Java EEアノテーションが使える

wordpress備忘録

引用

~~~

で挟むのが簡単(Shift+Enter)

フォントサイズ強制

[参加サイト] -> 左下の [WordPress 管理画面を表示] から [投稿]->[編集]-> [テキスト]タブで編集

<code><span style="font-size:14px;">[code gutter="false"]
--- Entering IntermediateTimerEvent
2017-03-29 16:35:20,667 DEBUG [main] [org.jbpm.process.core.timer.impl.QuartzSchedulerService] Scheduling timer with name 2-1-1
2017-03-29 16:35:20,682 DEBUG [main] [org.quartz.impl.jdbcjobstore.StdRowLockSemaphore] Lock 'TRIGGER_ACCESS' is desired by: main
2017-03-29 16:35:20,682 DEBUG [main] [org.quartz.impl.jdbcjobstore.StdRowLockSemaphore] Lock 'TRIGGER_ACCESS' is being obtained: main
2017-03-29 16:35:20,683 DEBUG [main] [org.quartz.impl.jdbcjobstore.StdRowLockSemaphore] Lock 'TRIGGER_ACCESS' given to: main
[/code]</span></code>

GMail 備忘録

ショートカット

https://support.google.com/mail/answer/6594?hl=en&authuser=1

Go to Inbox g + i
Go to Sent messages g + t

Previous conversation ↑
Next conversation ↓

Open conversation o or Enter
Back to threadlist u

Previous message in an open conversation p
Next message in an open conversation n

Select conversation x
Mark as read Shift + i
Mark as unread Shift + u

Compose c
Reply all a
Forward f
Send Ctrl + Enter

Open keyboard shortcut help ?

Filter

検索ボックスにこんな感じで入れて検索結果を確認。ボックス右の矢印からフィルター作成

to:(aaa@aaa.com OR bbb@bbb.com)

JIRA備忘録

  • Target Release が空
https://issues.jboss.org/issues/?jql=project%20in%20(RHBPMS%2C%20RHBRMS)%20AND%20issuetype%20%3D%20Bug%20AND%20status%20in%20(Open%2C%20Reopened%2C%20New)%20AND%20%22Target%20Release%22%20%3D%20EMPTY%20AND%20reporter%20%3D%20tkobayashi%20ORDER%20BY%20created%20DESC%2C%20affectedVersion%20DESC%2C%20key%20DESC