Giter Site home page Giter Site logo

toedter / chatty Goto Github PK

View Code? Open in Web Editor NEW
52.0 52.0 20.0 5.18 MB

A chat app demo with RESTful hypermedia API and server push.

License: MIT License

JavaScript 2.17% Groovy 0.87% Java 58.75% TypeScript 30.07% CSS 0.57% HTML 7.38% Batchfile 0.20%

chatty's People

Contributors

muenchhausen avatar toedter avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chatty's Issues

Build failed with an exception on MacOS

Given
environment Mac OS X 10.10.1, Java 1.8.0_25

When
I build it e.g.
./gradlew clean build --stacktrace

Then
I get the following error

  • What went wrong:
    Execution failed for task ':com.toedter.chatty.client.web:tsdInstall'.

    A problem occurred starting process 'command 'tsd''

  • Exception is:
    org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':com.toedter.chatty.client.web:tsdInstall'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:42)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:305)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.executeTask(AbstractTaskPlanExecutor.java:79)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:63)
    at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:51)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:23)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:88)
    at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)
    at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
    at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:68)
    at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)
    at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:55)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:149)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106)
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:80)
    at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
    at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
    at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:51)
    at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:171)
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:237)
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:210)
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206)
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
    at org.gradle.launcher.Main.doAction(Main.java:33)
    at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
    at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)
    at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)
    at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
    at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:33)
    at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:130)
    at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48)
    Caused by: org.gradle.process.internal.ExecException: A problem occurred starting process 'command 'tsd''
    at org.gradle.process.internal.DefaultExecHandle.setEndStateInfo(DefaultExecHandle.java:196)
    at org.gradle.process.internal.DefaultExecHandle.failed(DefaultExecHandle.java:325)
    at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:83)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64)
    Caused by: net.rubygrapefruit.platform.NativeException: Could not start 'tsd'
    at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:27)
    at net.rubygrapefruit.platform.internal.WrapperProcessLauncher.start(WrapperProcessLauncher.java:36)
    at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:65)
    ... 1 more
    Caused by: java.io.IOException: Cannot run program "tsd" (in directory "/Users/derk/Documents/GitProjects/chatty/subprojects/com.toedter.chatty.client.web"): error=2, No such file or directory
    at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:25)
    ... 3 more
    Caused by: java.io.IOException: error=2, No such file or directory
    ... 4 more

failed unit test under mac: Testing jasmine specs via PhantomJS

derk ~/Documents/GitProjects/chatty master $ ./gradlew build

:buildSrc:compileJava UP-TO-DATE
:buildSrc:compileGroovy UP-TO-DATE
:buildSrc:processResources UP-TO-DATE
:buildSrc:classes UP-TO-DATE
:buildSrc:jar UP-TO-DATE
:buildSrc:assemble UP-TO-DATE
:buildSrc:compileTestJava UP-TO-DATE
:buildSrc:compileTestGroovy UP-TO-DATE
:buildSrc:processTestResources UP-TO-DATE
:buildSrc:testClasses UP-TO-DATE
:buildSrc:test UP-TO-DATE
:buildSrc:check UP-TO-DATE
:buildSrc:build UP-TO-DATE
:com.toedter.chatty.client.web:compileJava UP-TO-DATE
:com.toedter.chatty.client.web:processResources UP-TO-DATE
:com.toedter.chatty.client.web:classes UP-TO-DATE
:com.toedter.chatty.client.web:jar UP-TO-DATE
:com.toedter.chatty.client.web:assemble UP-TO-DATE
:com.toedter.chatty.model:compileJava UP-TO-DATE
:com.toedter.chatty.model:processResources UP-TO-DATE
:com.toedter.chatty.model:classes UP-TO-DATE
:com.toedter.chatty.model:jar UP-TO-DATE
:com.toedter.chatty.server:compileJava UP-TO-DATE
:com.toedter.chatty.server:processResources UP-TO-DATE
:com.toedter.chatty.server:classes UP-TO-DATE
:com.toedter.chatty.server:compileIntegrationTestJava UP-TO-DATE
:com.toedter.chatty.server:processIntegrationTestResources UP-TO-DATE
:com.toedter.chatty.server:integrationTestClasses UP-TO-DATE
:com.toedter.chatty.server:integrationTest UP-TO-DATE
:com.toedter.chatty.server:startServerAsync
:com.toedter.chatty.server:startServerAsync: Jetty server started and ready
:com.toedter.chatty.client.web:gruntTest
Running "typescript:base" (typescript) task
4 files created. js: 2 files, map: 2 files, declaration: 0 files

Running "jasmine:src" (jasmine) task
Testing jasmine specs via PhantomJS

Publish - Subscribe

  • should subscribe for a message and receive a sent message (transport: websocket)...
    log: Invoking executeWebSocket

log: Using URL: ws://localhost:8080/chatty/atmos/chat?X-Atmosphere-tracking-id=0&X-Atmosphere-Framework=2.1.4-javascript&X-Atmosphere-Transport=websocket&X-Atmosphere-TrackMessageSize=true&X-Cache-Date=0&Content-Type=application/json&X-atmo-protocol=true

log: Websocket failed. Downgrading to Comet and resending

log: Unexpected response code: 400

log: Websocket failed. Downgrading to Comet and resending

log: No suspended connection available. Make sure atmosphere.subscribe has been called and request.onOpen invoked before invoking this method
...should subscribe for a message and receive a sent message (transport: websocket)...X
Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL. (1)

1 spec in 5.039s.

1 failures
Warning: Task "jasmine:src" failed. Use --force to continue.

Aborted due to warnings.

:com.toedter.chatty.client.web:gruntTest FAILED
:com.toedter.chatty.server:stopServer
:com.toedter.chatty.server:stopServer: stopping Jetty server

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':com.toedter.chatty.client.web:gruntTest'.

    Process 'command 'grunt'' finished with non-zero exit value 3

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 22.253 secs
derk ~/Documents/GitProjects/chatty master $

Use AnsiColor.DEFAULT instead of AnsiColor.BLACK at the end of banner.txt

The banner.txt is a nice example for how to make colored banners, but at the end [here] I think it should use ${AnsiColor.DEFAULT} instead of ${AnsiColor.BLACK}.

Yes, 99% of the time Black is the default color (or at least close to black) but not always. Most terminals allow setting a different default color than the other colors and that default color may be white, or pink, or anything.

The only reason I am even bringing it up is because this blog post is the first result when Googling "Spring Boot colored banner" (which points to this file) so this is sort of like a reference in a way.

Edit: Actually, ${AnsiStyle.NORMAL} may be even better. I believe it does [0m which I think resets everything (bold, italic, background, foreground, etc.).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.