Never mind Lance, Seems I have an error in my configuration. I think I'll be able to figure it out myself.
thanks anyhow Jon On Wed, May 22, 2013 at 6:10 PM, Jon Williams <[email protected]>wrote: > Hi Lance, > > This email thread caught my eye so I went and got your example app. > It seems to be running, in a fashion. However, > I'm seeing NPE's at runtime... > > 1 caveat, maybe pertinent. I had to add a dependency to the pom to get a > good build... > <dependency> > <groupId>org.eclipse.jetty</groupId> > <artifactId>jetty-server</artifactId> > <version>7.6.4.v20120524</version> > </dependency> > > If you've got a moment, maybe you could take a look. > Quite interested in using your project. > thanks > Jon > > Here my console output... > /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java > -Dmaven.home=/usr/share/java/maven-3.0.4 > -Dclassworlds.conf=/usr/share/java/maven-3.0.4/bin/m2.conf > -Didea.launcher.port=7532 > "-Didea.launcher.bin.path=/Applications/jetbrains2013/IntelliJ IDEA > 12.app/bin" -Dfile.encoding=UTF-8 -classpath > "/usr/share/java/maven-3.0.4/boot/plexus-classworlds-2.4.jar:/Applications/jetbrains2013/IntelliJ > IDEA 12.app/lib/idea_rt.jar" com.intellij.rt.execution.application.AppMain > org.codehaus.classworlds.Launcher --fail-fast --strict-checksums > org.mortbay.jetty:maven-jetty-plugin:6.1.16:run -P jetty-hightide > [INFO] Scanning for projects... > [INFO] > > [INFO] > ------------------------------------------------------------------------ > [INFO] Building tapestry-cometd-demo Tapestry 5 Application 1.0-SNAPSHOT > [INFO] > ------------------------------------------------------------------------ > [INFO] > [INFO] >>> maven-jetty-plugin:6.1.16:run (default-cli) @ > tapestry-cometd-demo >>> > [INFO] > [INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ > tapestry-cometd-demo --- > [debug] execute contextualize > [WARNING] Using platform encoding (UTF-8 actually) to copy filtered > resources, i.e. build is platform dependent! > [INFO] Copying 8 resources > [INFO] > [INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ > tapestry-cometd-demo --- > [INFO] Nothing to compile - all classes are up to date > [INFO] > [INFO] --- maven-resources-plugin:2.5:testResources > (default-testResources) @ tapestry-cometd-demo --- > [debug] execute contextualize > [WARNING] Using platform encoding (UTF-8 actually) to copy filtered > resources, i.e. build is platform dependent! > [INFO] Copying 1 resource > [INFO] > [INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ > tapestry-cometd-demo --- > [INFO] Nothing to compile - all classes are up to date > [INFO] > [INFO] <<< maven-jetty-plugin:6.1.16:run (default-cli) @ > tapestry-cometd-demo <<< > [INFO] > [INFO] --- maven-jetty-plugin:6.1.16:run (default-cli) @ > tapestry-cometd-demo --- > [INFO] Configuring Jetty for project: tapestry-cometd-demo Tapestry 5 > Application > [INFO] Webapp source directory = > /Users/jonwilliams/wrk/java/3rdParty/tapestry-cometd-demo-master/src/main/webapp > [INFO] Reload Mechanic: automatic > [INFO] web.xml file = > /Users/jonwilliams/wrk/java/3rdParty/tapestry-cometd-demo-master/src/main/webapp/WEB-INF/web.xml > [INFO] Classes = > /Users/jonwilliams/wrk/java/3rdParty/tapestry-cometd-demo-master/target/classes > 2013-05-22 18:02:35.124::INFO: Logging to STDERR via > org.mortbay.log.StdErrLog > [INFO] Context path = /tapestry-cometd-demo > [INFO] Tmp directory = determined at runtime > [INFO] Web defaults = org/mortbay/jetty/webapp/webdefault.xml > [INFO] Web overrides = none > [INFO] Webapp directory = > /Users/jonwilliams/wrk/java/3rdParty/tapestry-cometd-demo-master/src/main/webapp > [INFO] Starting jetty 6.1.16 ... > 2013-05-22 18:02:35.211::INFO: jetty-6.1.16 > 2013-05-22 18:02:35.327::INFO: No Transaction manager found - if your > webapp requires one, please configure one. > [INFO] ioc.RegistryBuilder Adding module definition for class > org.apache.tapestry5.ioc.services.TapestryIOCModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.apache.tapestry5.json.services.JSONModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.lazan.t5.cometd.services.CometdModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.got5.tapestry5.jquery.services.JQueryModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.got5.tapestry5.jquery.services.js.JSModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.apache.tapestry5.upload.services.UploadModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.apache.tapestry5.services.TapestryModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.apache.tapestry5.internal.services.InternalModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.apache.tapestry5.services.assets.AssetsModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.apache.tapestry5.services.pageload.PageLoadModule > [INFO] ioc.RegistryBuilder Adding module definition for class > org.lazan.t5.cometddemo.services.AppModule > [INFO] TapestryModule.ComponentClassResolver Registering cometd component > library > [INFO] TapestryModule.ComponentClassResolver Available pages (8): > (blank): org.lazan.t5.cometddemo.pages.Index > Chat: org.lazan.t5.cometddemo.pages.Chat > ExceptionReport: org.apache.tapestry5.corelib.pages.ExceptionReport > Index: org.lazan.t5.cometddemo.pages.Index > PageCatalog: org.apache.tapestry5.corelib.pages.PageCatalog > PropertyDisplayBlocks: > org.apache.tapestry5.corelib.pages.PropertyDisplayBlocks > PropertyEditBlocks: > org.apache.tapestry5.corelib.pages.PropertyEditBlocks > ServiceStatus: org.apache.tapestry5.corelib.pages.ServiceStatus > Stocks: org.lazan.t5.cometddemo.pages.Stocks > > [INFO] TapestryModule.ComponentClassResolver Available components (80): > ActionLink: > org.apache.tapestry5.corelib.components.ActionLink > AddRowLink: > org.apache.tapestry5.corelib.components.AddRowLink > AjaxFormLoop: > org.apache.tapestry5.corelib.components.AjaxFormLoop > Alerts: org.apache.tapestry5.corelib.components.Alerts > Any: org.apache.tapestry5.corelib.components.Any > BeanDisplay: > org.apache.tapestry5.corelib.components.BeanDisplay > BeanEditForm: > org.apache.tapestry5.corelib.components.BeanEditForm > BeanEditor: > org.apache.tapestry5.corelib.components.BeanEditor > Checkbox: > org.apache.tapestry5.corelib.components.Checkbox > Checklist: > org.apache.tapestry5.corelib.components.Checklist > DateField: > org.apache.tapestry5.corelib.components.DateField > Delegate: > org.apache.tapestry5.corelib.components.Delegate > Doctype: org.apache.tapestry5.corelib.components.Doctype > Dynamic: org.apache.tapestry5.corelib.components.Dynamic > Error: org.apache.tapestry5.corelib.components.Error > Errors: org.apache.tapestry5.corelib.components.Errors > EventLink: > org.apache.tapestry5.corelib.components.EventLink > ExceptionDisplay: > org.apache.tapestry5.corelib.components.ExceptionDisplay > Form: org.apache.tapestry5.corelib.components.Form > FormFragment: > org.apache.tapestry5.corelib.components.FormFragment > FormInjector: > org.apache.tapestry5.corelib.components.FormInjector > Grid: org.apache.tapestry5.corelib.components.Grid > GridCell: > org.apache.tapestry5.corelib.components.GridCell > GridColumns: > org.apache.tapestry5.corelib.components.GridColumns > GridPager: > org.apache.tapestry5.corelib.components.GridPager > GridRows: > org.apache.tapestry5.corelib.components.GridRows > Hidden: org.apache.tapestry5.corelib.components.Hidden > If: org.apache.tapestry5.corelib.components.If > Label: org.apache.tapestry5.corelib.components.Label > Layout: org.lazan.t5.cometddemo.components.Layout > LinkSubmit: > org.apache.tapestry5.corelib.components.LinkSubmit > Loop: org.apache.tapestry5.corelib.components.Loop > Output: org.apache.tapestry5.corelib.components.Output > OutputRaw: > org.apache.tapestry5.corelib.components.OutputRaw > PageLink: > org.apache.tapestry5.corelib.components.PageLink > Palette: org.apache.tapestry5.corelib.components.Palette > PasswordField: > org.apache.tapestry5.corelib.components.PasswordField > ProgressiveDisplay: > org.apache.tapestry5.corelib.components.ProgressiveDisplay > PropertyDisplay: > org.apache.tapestry5.corelib.components.PropertyDisplay > PropertyEditor: > org.apache.tapestry5.corelib.components.PropertyEditor > Radio: org.apache.tapestry5.corelib.components.Radio > RadioGroup: > org.apache.tapestry5.corelib.components.RadioGroup > RemoveRowLink: > org.apache.tapestry5.corelib.components.RemoveRowLink > RenderObject: > org.apache.tapestry5.corelib.components.RenderObject > Select: org.apache.tapestry5.corelib.components.Select > Submit: org.apache.tapestry5.corelib.components.Submit > SubmitNotifier: > org.apache.tapestry5.corelib.components.SubmitNotifier > TextArea: > org.apache.tapestry5.corelib.components.TextArea > TextField: > org.apache.tapestry5.corelib.components.TextField > TextOutput: > org.apache.tapestry5.corelib.components.TextOutput > Tree: org.apache.tapestry5.corelib.components.Tree > Trigger: org.apache.tapestry5.corelib.components.Trigger > Unless: org.apache.tapestry5.corelib.components.Unless > Upload: org.apache.tapestry5.upload.components.Upload > Zone: org.apache.tapestry5.corelib.components.Zone > cometd/PushTarget: org.lazan.t5.cometd.components.PushTarget > jquery/AbstractJQueryTable: > org.got5.tapestry5.jquery.components.AbstractJQueryTable > jquery/AbstractTable: > org.got5.tapestry5.jquery.components.AbstractTable > jquery/Accordion: org.got5.tapestry5.jquery.components.Accordion > jquery/AjaxUpload: org.got5.tapestry5.jquery.components.AjaxUpload > jquery/Carousel: org.got5.tapestry5.jquery.components.Carousel > jquery/CarouselItem: > org.got5.tapestry5.jquery.components.CarouselItem > jquery/Checkbox: org.got5.tapestry5.jquery.components.Checkbox > jquery/DataTable: org.got5.tapestry5.jquery.components.DataTable > jquery/Dialog: org.got5.tapestry5.jquery.components.Dialog > jquery/DialogAjaxLink: > org.got5.tapestry5.jquery.components.DialogAjaxLink > jquery/DialogLink: org.got5.tapestry5.jquery.components.DialogLink > jquery/Draggable: org.got5.tapestry5.jquery.components.Draggable > jquery/Gallery: org.got5.tapestry5.jquery.components.Gallery > jquery/GridColumns: > org.got5.tapestry5.jquery.components.GridColumns > jquery/InPlaceEditor: > org.got5.tapestry5.jquery.components.InPlaceEditor > jquery/Palette: org.got5.tapestry5.jquery.components.Palette > jquery/ProgressiveDisplay: > org.got5.tapestry5.jquery.components.ProgressiveDisplay > jquery/RangeSlider: > org.got5.tapestry5.jquery.components.RangeSlider > jquery/ShowSource: org.got5.tapestry5.jquery.components.ShowSource > jquery/Slider: org.got5.tapestry5.jquery.components.Slider > jquery/Superfish: org.got5.tapestry5.jquery.components.Superfish > jquery/Tabs: org.got5.tapestry5.jquery.components.Tabs > jquery/TwitterView: > org.got5.tapestry5.jquery.components.TwitterView > t5internal/InternalLayout: > org.apache.tapestry5.internal.t5internal.components.InternalLayout > > [INFO] TapestryModule.ComponentClassResolver Available mixins (24): > Autocomplete: org.apache.tapestry5.corelib.mixins.Autocomplete > DiscardBody: org.apache.tapestry5.corelib.mixins.DiscardBody > FormFieldFocus: org.apache.tapestry5.corelib.mixins.FormFieldFocus > NotEmpty: org.apache.tapestry5.corelib.mixins.NotEmpty > OverrideFieldFocus: > org.apache.tapestry5.corelib.mixins.OverrideFieldFocus > RenderClientId: org.apache.tapestry5.corelib.mixins.RenderClientId > RenderDisabled: org.apache.tapestry5.corelib.mixins.RenderDisabled > RenderInformals: > org.apache.tapestry5.corelib.mixins.RenderInformals > RenderNotification: > org.apache.tapestry5.corelib.mixins.RenderNotification > TriggerFragment: > org.apache.tapestry5.corelib.mixins.TriggerFragment > ZoneRefresh: org.apache.tapestry5.corelib.mixins.ZoneRefresh > jquery/Autocomplete: org.got5.tapestry5.jquery.mixins.Autocomplete > jquery/Bind: org.got5.tapestry5.jquery.mixins.Bind > jquery/Button: org.got5.tapestry5.jquery.mixins.Button > jquery/CustomDatepicker: org.got5.tapestry5.jquery.mixins.CustomDatepicker > jquery/CustomZone: org.got5.tapestry5.jquery.mixins.CustomZone > jquery/Mask: org.got5.tapestry5.jquery.mixins.Mask > jquery/Placeholder: org.got5.tapestry5.jquery.mixins.Placeholder > jquery/Reveal: org.got5.tapestry5.jquery.mixins.Reveal > jquery/Selector: org.got5.tapestry5.jquery.mixins.Selector > jquery/Tooltip: org.got5.tapestry5.jquery.mixins.Tooltip > jquery/ZoneDroppable: org.got5.tapestry5.jquery.mixins.ZoneDroppable > jquery/ZoneRefresh: org.got5.tapestry5.jquery.mixins.ZoneRefresh > jquery/ui/Widget: org.got5.tapestry5.jquery.mixins.ui.Widget > > [INFO] BayeuxServerImpl.328332828 logLevel=2 > [INFO] BayeuxServerImpl.328332828 org.atmosphere.useStream=false > [INFO] tapestry5.TapestryFilter Startup status: > > Services: > > ActionRenderResponseGenerator: DEFINED > AjaxComponentEventRequestHandler: DEFINED > AjaxComponentEventResultProcessor: DEFINED > AjaxFormUpdateController: DEFINED > AjaxPartialResponseRenderer: DEFINED > AjaxResponseRenderer: DEFINED > AjaxUploadDecoder: DEFINED > AlertManager: DEFINED > ApplicationDefaults: REAL > ApplicationGlobals: REAL > ApplicationInitializer: REAL > ApplicationStateManager: DEFINED > ApplicationStatePersistenceStrategySource: DEFINED > AspectDecorator: VIRTUAL > AssetBindingFactory: DEFINED > AssetDispatcher: DEFINED > AssetObjectProvider: REAL > AssetPathConstructor: DEFINED > AssetPathConverter: DEFINED > AssetResourceLocator: DEFINED > AssetSource: VIRTUAL > Authorizers: VIRTUAL > BaseURLSource: DEFINED > BayeuxServer: REAL > BeanBlockOverrideSource: DEFINED > BeanBlockSource: DEFINED > BeanModelSource: DEFINED > BindingSource: DEFINED > ChainBuilder: VIRTUAL > ChannelIdSource: DEFINED > ChatService: DEFINED > ClassFactory: BUILTIN > ClassNameLocator: REAL > ClasspathAssetAliasManager: DEFINED > ClasspathAssetFactory: DEFINED > ClasspathURLConverter: REAL > ClientBehaviorSupport: DEFINED > ClientDataEncoder: DEFINED > ClientPersistentFieldStorage: DEFINED > ClientPersistentFieldStrategy: DEFINED > ClientWhitelist: DEFINED > CometdGlobals: VIRTUAL > CometdHttpServletRequestFilter: REAL > ComponentClassCache: VIRTUAL > ComponentClassFactory: DEFINED > ComponentClassResolver: REAL > ComponentClassTransformWorker: DEFINED > ComponentClassesInvalidationEventHub: REAL > ComponentDefaultProvider: DEFINED > ComponentEventLinkEncoder: DEFINED > ComponentEventLinkTransformer: DEFINED > ComponentEventRequestHandler: DEFINED > ComponentEventResultProcessor: DEFINED > ComponentInstanceResultProcessor: DEFINED > ComponentInstantiatorSource: DEFINED > ComponentJSONRenderer: VIRTUAL > ComponentMessagesInvalidationEventHub: DEFINED > ComponentMessagesSource: DEFINED > ComponentModelSource: DEFINED > ComponentPageElementResourcesSource: DEFINED > ComponentProxyFactory: DEFINED > ComponentRequestHandler: DEFINED > ComponentRequestSelectorAnalyzer: DEFINED > ComponentResourceLocator: DEFINED > ComponentSource: DEFINED > ComponentTemplateLocator: DEFINED > ComponentTemplateSource: DEFINED > ComponentTemplatesInvalidationEventHub: DEFINED > CompressionAnalyzer: DEFINED > ContentTypeAnalyzer: DEFINED > Context: DEFINED > ContextAssetFactory: DEFINED > ContextBindingFactory: DEFINED > ContextPathEncoder: DEFINED > ContextValueEncoder: DEFINED > CookieSink: DEFINED > CookieSource: DEFINED > Cookies: DEFINED > DataTypeAnalyzer: DEFINED > DefaultDataTypeAnalyzer: DEFINED > DefaultFileItemFactory: DEFINED > DefaultImplementationBuilder: VIRTUAL > DeferredExecution: DEFINED > DynamicTemplateParser: VIRTUAL > EffectsParam: DEFINED > EndOfRequestEventHub: REAL > Environment: DEFINED > EnvironmentalShadowBuilder: VIRTUAL > ExceptionAnalyzer: DEFINED > ExceptionTracker: DEFINED > FactoryDefaults: REAL > FieldTranslatorSource: DEFINED > FieldValidationSupport: DEFINED > FieldValidatorDefaultSource: DEFINED > FieldValidatorSource: DEFINED > FormSupport: DEFINED > Heartbeat: DEFINED > HiddenFieldLocationRules: DEFINED > HttpServletRequest: DEFINED > HttpServletRequestHandler: VIRTUAL > HttpServletResponse: DEFINED > IgnoredPathsFilter: DEFINED > InjectionProvider: DEFINED > InternalComponentInvalidationEventHub: REAL > InternalRequestGlobals: DEFINED > JSHandler: DEFINED > JSLocator: DEFINED > JSSupport: DEFINED > JavaScriptStackPathConstructor: DEFINED > JavaScriptStackSource: DEFINED > JavaScriptSupport: DEFINED > LazyAdvisor: DEFINED > LinkCreationHub: DEFINED > LinkSource: DEFINED > LinkTransformer: DEFINED > LocalizationSetter: DEFINED > LocationRenderer: DEFINED > LoggerSource: BUILTIN > LoggingAdvisor: DEFINED > LoggingDecorator: DEFINED > MarkupRenderer: DEFINED > MarkupWriterFactory: DEFINED > MasterDispatcher: DEFINED > MasterObjectProvider: REAL > MasterStackTraceElementAnalyzer: DEFINED > MessageBindingFactory: DEFINED > MetaDataLocator: DEFINED > MetaWorker: DEFINED > MultipartDecoder: DEFINED > NullFieldStrategyBindingFactory: DEFINED > NullFieldStrategySource: DEFINED > NumericTranslatorSupport: DEFINED > ObjectRenderer: DEFINED > PageActivationContextCollector: DEFINED > PageActivator: DEFINED > PageContentTypeAnalyzer: DEFINED > PageDocumentGenerator: DEFINED > PageElementFactory: DEFINED > PageGlobals: DEFINED > PageLoader: DEFINED > PageMarkupRenderer: DEFINED > PageRenderLinkSource: DEFINED > PageRenderLinkTransformer: DEFINED > PageRenderQueue: DEFINED > PageRenderRequestHandler: DEFINED > PageResponseRenderer: DEFINED > PageSource: DEFINED > PartialMarkupRenderer: DEFINED > PeriodicExecutor: DEFINED > PersistentFieldManager: DEFINED > PersistentLocale: DEFINED > PerthreadManager: BUILTIN > PipelineBuilder: REAL > PlasticProxyFactory: BUILTIN > PropBindingFactory: DEFINED > PropertiesFileParser: DEFINED > PropertyAccess: VIRTUAL > PropertyConduitSource: DEFINED > PropertyShadowBuilder: VIRTUAL > PushManager: REAL > RegistryShutdownHub: BUILTIN > RegistryStartup: REAL > RenderSupport: DEFINED > RenderTracker: DEFINED > Request: VIRTUAL > RequestExceptionHandler: DEFINED > RequestGlobals: DEFINED > RequestHandler: DEFINED > RequestPageCache: DEFINED > RequestSecurityManager: DEFINED > ResourceChangeTracker: DEFINED > ResourceDigestGenerator: DEFINED > ResourceDigestManager: DEFINED > ResourceMinimizer: DEFINED > ResourceStreamer: DEFINED > Response: VIRTUAL > ResponseCompressionAnalyzer: DEFINED > ResponseRenderer: DEFINED > SelectModelFactory: DEFINED > SelectorBindingFactory: DEFINED > ServiceActivityScoreboard: BUILTIN > ServiceLifecycleSource: REAL > ServiceOverride: REAL > ServletApplicationInitializer: REAL > SessionApplicationStatePersistenceStrategy: DEFINED > SessionPersistedObjectAnalyzer: DEFINED > StockService: DEFINED > StrategyBuilder: VIRTUAL > StreamableResourceSource: DEFINED > StringInterner: DEFINED > SubscriptionListeners: VIRTUAL > SymbolBindingFactory: DEFINED > SymbolSource: REAL > TapestrySessionFactory: DEFINED > TemplateParser: DEFINED > ThreadLocale: DEFINED > ThunkCreator: DEFINED > TranslateBindingFactory: DEFINED > TranslatorAlternatesSource: DEFINED > TranslatorSource: DEFINED > TypeCoercer: REAL > URLEncoder: DEFINED > UpdateListenerHub: DEFINED > ValidateBindingFactory: DEFINED > ValidationConstraintGenerator: DEFINED > ValidationDecoratorFactory: DEFINED > ValidatorMacro: DEFINED > ValueEncoderSource: DEFINED > WidgetParams: DEFINED > js: DEFINED > > 86.67% unrealized services (182/210) > > Application 'app' (version 1.0-SNAPSHOT) startup time: 228 ms to build IoC > Registry, 1,051 ms overall. > > ______ __ ____ > /_ __/__ ____ ___ ___ / /_______ __ / __/ > / / / _ `/ _ \/ -_|_-</ __/ __/ // / /__ \ > /_/ \_,_/ .__/\__/___/\__/_/ \_, / /____/ > /_/ /___/ 5.3.3 (development mode) > > > [INFO] Started Jetty Server > 2013-05-22 18:02:36.808::INFO: Started > [email protected]:8080 > 2013-05-22 18:02:41.837::WARN: /tapestry-cometd-demo/cometd > java.lang.NullPointerException > at > org.eclipse.jetty.websocket.WebSocketFactory.upgrade(WebSocketFactory.java:225) > at > org.eclipse.jetty.websocket.WebSocketFactory.acceptWebSocket(WebSocketFactory.java:361) > at > org.cometd.websocket.server.WebSocketTransport.handle(WebSocketTransport.java:154) > at org.cometd.server.CometdServlet.service(CometdServlet.java:181) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) > at > org.lazan.t5.cometd.services.internal.ServletHttpServletRequestFilter.service(ServletHttpServletRequestFilter.java:76) > at $CometdHttpServletRequestFilter_13009d67d39f69fe.service(Unknown > Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:26) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62) > at $HttpServletRequestFilter_13009d67d39f6a05.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a02.service(Unknown Source) > at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1148) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:387) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) > at > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) > at > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) > at org.mortbay.jetty.Server.handle(Server.java:324) > at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) > at > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) > at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) > at > org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) > 2013-05-22 18:02:42.635::WARN: /tapestry-cometd-demo/cometd > java.lang.NullPointerException > at > org.eclipse.jetty.websocket.WebSocketFactory.upgrade(WebSocketFactory.java:225) > at > org.eclipse.jetty.websocket.WebSocketFactory.acceptWebSocket(WebSocketFactory.java:361) > at > org.cometd.websocket.server.WebSocketTransport.handle(WebSocketTransport.java:154) > at org.cometd.server.CometdServlet.service(CometdServlet.java:181) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) > at > org.lazan.t5.cometd.services.internal.ServletHttpServletRequestFilter.service(ServletHttpServletRequestFilter.java:76) > at $CometdHttpServletRequestFilter_13009d67d39f69fe.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:26) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62) > at $HttpServletRequestFilter_13009d67d39f6a05.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a02.service(Unknown Source) > at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1148) > at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:387) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) > at > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) > at > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) > at org.mortbay.jetty.Server.handle(Server.java:324) > at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) > at > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) > at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) > at > org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) > 2013-05-22 > 18:02:42.881:org.eclipse.jetty.continuation.Jetty6Continuation:WARN: > !ContinuationFilter installed > 2013-05-22 18:02:42.881::WARN: /tapestry-cometd-demo/cometd/connect > java.lang.RuntimeException: java.lang.reflect.InvocationTargetException > at > org.eclipse.jetty.continuation.ContinuationSupport.getContinuation(ContinuationSupport.java:141) > at > org.cometd.server.transport.LongPollingTransport.handle(LongPollingTransport.java:286) > at org.cometd.server.CometdServlet.service(CometdServlet.java:181) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) > at > org.lazan.t5.cometd.services.internal.ServletHttpServletRequestFilter.service(ServletHttpServletRequestFilter.java:76) > at $CometdHttpServletRequestFilter_13009d67d39f69fe.service(Unknown > Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:26) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62) > at $HttpServletRequestFilter_13009d67d39f6a05.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a02.service(Unknown Source) > at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1148) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:387) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) > at > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) > at > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) > at org.mortbay.jetty.Server.handle(Server.java:324) > at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) > at > org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:880) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:747) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) > at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) > at > org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) > Caused by: java.lang.reflect.InvocationTargetException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > at java.lang.reflect.Constructor.newInstance(Constructor.java:513) > at > org.eclipse.jetty.continuation.ContinuationSupport.getContinuation(ContinuationSupport.java:135) > ... 34 more > Caused by: java.lang.IllegalStateException: !ContinuationFilter installed > at > org.eclipse.jetty.continuation.Jetty6Continuation.<init>(Jetty6Continuation.java:45) > ... 39 more > isAuthorized(/chatservice/users) > [DEBUG] AppModule.ChatService Creating proxy for service ChatService > [DEBUG] AppModule.ChatService Loading class > org.lazan.t5.cometddemo.services.internal.ChatServiceImpl. > [DEBUG] AppModule.ChatService Marking class > org.lazan.t5.cometddemo.services.internal.ChatServiceImpl to be (re-)loaded > [DEBUG] AppModule.ChatService BEGIN Analyzing > org.lazan.t5.cometddemo.services.internal.ChatServiceImpl > [DEBUG] AppModule.ChatService END Analyzing > org.lazan.t5.cometddemo.services.internal.ChatServiceImpl > [DEBUG] AppModule.ChatService Invoking constructor public > org.lazan.t5.cometddemo.services.internal.ChatServiceImpl(org.lazan.t5.cometd.services.PushManager) > (for service 'ChatService') > onSubscribe(/chatservice/users) > isAuthorized(/chatservice/chat) > [INFO] server.ServerChannel Exception while invoking listener <Proxy for > SubscriptionListeners(org.lazan.t5.cometd.services.SubscriptionListeners)> > java.lang.IllegalStateException: Chat user not logged in > at > org.lazan.t5.cometddemo.services.internal.ChatSubscriptionListener.onSubscribe(ChatSubscriptionListener.java:31) > at > org.lazan.t5.cometd.services.internal.SubscriptionListenersImpl.subscribed(SubscriptionListenersImpl.java:45) > at $SubscriptionListeners_13009d67d39f6a00.subscribed(Unknown Source) > at > org.cometd.server.ServerChannelImpl.notifySubscribed(ServerChannelImpl.java:148) > at > org.cometd.server.ServerChannelImpl.subscribe(ServerChannelImpl.java:127) > at > org.cometd.server.ServerChannelImpl.subscribe(ServerChannelImpl.java:113) > at > org.cometd.server.BayeuxServerImpl$SubscribeHandler.onMessage(BayeuxServerImpl.java:1373) > at > org.cometd.server.BayeuxServerImpl.doPublish(BayeuxServerImpl.java:882) > at org.cometd.server.BayeuxServerImpl.handle(BayeuxServerImpl.java:672) > at > org.cometd.server.transport.LongPollingTransport.bayeuxServerHandle(LongPollingTransport.java:425) > at > org.cometd.server.transport.LongPollingTransport.handle(LongPollingTransport.java:234) > at org.cometd.server.CometdServlet.service(CometdServlet.java:181) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) > at > org.lazan.t5.cometd.services.internal.ServletHttpServletRequestFilter.service(ServletHttpServletRequestFilter.java:76) > at $CometdHttpServletRequestFilter_13009d67d39f69fe.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:26) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62) > at $HttpServletRequestFilter_13009d67d39f6a05.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a02.service(Unknown Source) > at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1148) > at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:387) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) > at > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) > at > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) > at org.mortbay.jetty.Server.handle(Server.java:324) > at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) > at > org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:880) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:747) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) > at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) > at > org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) > isAuthorized(/stocks/GOOG) > onSubscribe(/stocks/GOOG) > isAuthorized(/stocks/YAHOO) > onSubscribe(/stocks/YAHOO) > 2013-05-22 > 18:02:43.655:org.eclipse.jetty.continuation.Jetty6Continuation:WARN: > !ContinuationFilter installed > 2013-05-22 18:02:43.655::WARN: /tapestry-cometd-demo/cometd/connect > java.lang.RuntimeException: java.lang.reflect.InvocationTargetException > at > org.eclipse.jetty.continuation.ContinuationSupport.getContinuation(ContinuationSupport.java:141) > at > org.cometd.server.transport.LongPollingTransport.handle(LongPollingTransport.java:286) > at org.cometd.server.CometdServlet.service(CometdServlet.java:181) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) > at > org.lazan.t5.cometd.services.internal.ServletHttpServletRequestFilter.service(ServletHttpServletRequestFilter.java:76) > at $CometdHttpServletRequestFilter_13009d67d39f69fe.service(Unknown > Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:26) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62) > at $HttpServletRequestFilter_13009d67d39f6a05.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at > org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852) > at $HttpServletRequestHandler_13009d67d39f6a09.service(Unknown Source) > at $HttpServletRequestHandler_13009d67d39f6a02.service(Unknown Source) > at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171) > at > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1148) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:387) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) > at > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) > at > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) > at org.mortbay.jetty.Server.handle(Server.java:324) > at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535) > at > org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:880) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:747) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) > at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) > at > org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) > Caused by: java.lang.reflect.InvocationTargetException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > at java.lang.reflect.Constructor.newInstance(Constructor.java:513) > at > org.eclipse.jetty.continuation.ContinuationSupport.getContinuation(ContinuationSupport.java:135) > ... 34 more > Caused by: java.lang.IllegalStateException: !ContinuationFilter installed > at > org.eclipse.jetty.continuation.Jetty6Continuation.<init>(Jetty6Continuation.java:45) > ... 39 more > isAuthorized(/stocks/IBM) > onSubscribe(/stocks/IBM) > isAuthorized(/stocks/SONY) > onSubscribe(/stocks/SONY) > isAuthorized(/stocks/**) > onSubscribe(/stocks/**) > > > > > On Wed, May 22, 2013 at 3:37 PM, Lance Java <[email protected]>wrote: > >> Hi, as a previous dwr committer myself, I was keen to provide dwr reverse >> ajax / tapestry integration. >> >> After speaking to the dwr team, I found that the push mechanism in dwr was >> not considered bulletproof and was directed towards cometd >> >> For this reason, I have created tapestry-cometd, a push library for >> tapestry that requires zero javascript >> https://github.com/uklance/tapestry-cometd >> >> You must be aware that the tapestry team currently have push as a high >> priority feature for the next release. So watch this space for an out of >> the box solution. >> >> In the meantime, I'll be happy to help with a tapestry - cometd solution . >> > >
