Re: Checking in
Carl G <[email protected]> Wed, 26 Feb 2025 23:02:04 -0500
| Newsgroups | gmane.comp.lang.smalltalk.squeak.seaside |
|---|---|
| Message-ID | <CAPYvR9d4CU-1vmPNSAZOeJEyVXJufU28qYUG-ErUdmteBWRddg@mail.gmail.com> |
--===============1001524204433457813== Content-Type: multipart/alternative; boundary="00000000000080dd44062f17c1c9" --00000000000080dd44062f17c1c9 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hey, I finally got around to trying this. fileSystem :=3D WAExternalFileLibrary new. WADispatcher new register: fileSystem at: 'culture'. fileSystem preferenceAt: #directory put: 'c:\rbdev\public\' As soon as I do this, the Seaside server is broken and I can't even launch a browser on it. I get this: This site can=E2=80=99t be reached *desktop-m4pvv3o* refused to connect. So, maybe there is something else to do? -Carl On Sun, Feb 23, 2025 at 8:04=E2=80=AFPM Jupiter Jones <[email protected]= om> wrote: > Hi Carl, > > From memory, you shouldn=E2=80=99t need to call updateRoot: on the librar= ies - I > believe that=E2=80=99s handled automatically. > > In any case, I just installed it to have a look and my educated guess was > totally wrong :) > > From WAExternalFileLibraryTest-#setUp > > fileSystem :=3D WAExternalFileLibrary new. > WADispatcher new register: fileSystem at: =E2=80=98culture' > > I guess you might be able to set the directory to serve files from the UI= , > or maybe in code with something like=E2=80=A6 > > fileSystem preferenceAt: #directory put: =E2=80=98/path/to/files=E2=80=99 > > If you have no luck, I should have time to give this a go tonight or > tomorrow. > > On 24 Feb 2025, at 10:47=E2=80=AFam, Carl G <[email protected]> wrote: > > Well, thanks for your help but no luck. The trouble is that the > WAExternalFileLibrary seems to be broken? I dunno. It throws an excepti= on > in this method: > > SeasideRenderLoopContinuation>>updateRoot: anHtmlRoot > > | charSet | > > charSet :=3D self application contentType charSet. > > charSet isNil ifFalse: [ > > anHtmlRoot meta charset: charSet ]. > > anHtmlRoot beHtml5. > > anHtmlRoot title: 'Seaside'. > > self application libraries > > do: [ :each | each default updateRoot: anHtmlRoot ]. > > self session updateRoot: anHtmlRoot > > It DNUs when it tried to send #default to the library. I wonder if I can > make my own subclass of WAFileLibrary and extend it to serve files from a > disk folder. > > It's just puzzling that there isn't a ready made way to do this. After > WAExternalFileLibrary does work in Seaside 2.8. > > I was hoping to find an answer in the Seaside book at > http://book.seaside.st/book but the web page is hug or something. It was > working a few days ago. > > Whose bell do I ring to get that rebooted? > > -Carl > > On Sun, Feb 23, 2025 at 5:23=E2=80=AFPM <[email protected]> wrot= e: > >> Hi Carl, >> >> Disclaimer: I=E2=80=99ve never used a WAExternalFileLibrary so the follo= wing is >> an educated guess, but hopefully gives you enough info. >> >> I typically configure these kind of things on creation of the applicatio= n >> with something like a #configureApplication: method on the class side of= my >> root component... >> >> configureApplication: anApplication >> anApplication preferenceAt: #sessionClass put: MySession. >> anApplication configuration >> addParent: MySystemConfiguration instance. >> anApplication >> addLibrary: WAExternalFileLibrary; >> addLibrary: JQDevelopmentLibrary. >> anApplication >> preferenceAt: #directory put: =E2=80=98/path/to/serve/from=E2=80=99. >> >> Then call this method from the method that installs the web app=E2=80=A6 >> >> register >> self configureApplication: (WAAdmin register: self asApplicationAt: >> =E2=80=98MyAppName') >> >> Cheers >> >> >> >> On 24 Feb 2025, at 8:56=E2=80=AFam, Carl G <[email protected]> wrote: >> >> I'm trying a few things trying to make my application serve static >> files. Run BASIC dynamically generates PNG files that are rendered into >> the web page, but I cannot figure out how to make it work after hours of >> head banging. The old version of Seaside allows me to add >> WAExternalFileLibrary in the configuration page. But I cannot do this w= ith >> Seaside 3.5.1 on VW for some reason. If I try to do the following, I ge= t a >> debugger when I launch the app. >> >> (WADispatcher default handlers at: 'runbasicpersonal') >> addLibrary: WAExternalFileLibrary >> >> If I substitute WAFileLibrary it doesn't blow up, but it doesn't seem to >> do anything either. Putting a breakpoint in the handle: method for the >> instance of WAFileLibrary does not stop. It seems that the WAFileLibrar= y >> is not being used. My guess is that it's only for serving 'files' that = are >> in-memory anyways but I tried it just to see if I could anything work. >> >> Any ideas? What the simplest possible way to add external file serving >> to my Seaside app? I absolutely do not want my users to need Apache or >> something else. The current version doesn't require it. >> >> Thanks in advance. >> >> -Carl Gundel, author of Run BASIC >> http://www.runbasic.com >> _______________________________________________ >> seaside mailing list -- [email protected] >> To unsubscribe send an email to [email protected] >> >> >> _______________________________________________ > seaside mailing list -- [email protected] > To unsubscribe send an email to [email protected] > > > --00000000000080dd44062f17c1c9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Hey, I finally got around to trying this.<div><br></div><d= iv><p><span style=3D"font-size:12px">fileSystem</span><span style=3D"font-s= ize:12px">=C2=A0</span><span style=3D"font-size:12px">:=3D</span><span styl= e=3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px">WAExternal= FileLibrary</span><span style=3D"font-size:12px">=C2=A0</span><span style= =3D"font-size:12px">new</span><span style=3D"font-size:12px">.</span></p><p= ><span style=3D"font-size:12px">WADispatcher</span><span style=3D"font-size= :12px">=C2=A0</span><span style=3D"font-size:12px">new</span><span style=3D= "font-size:12px">=C2=A0</span><span style=3D"font-size:12px">register:</spa= n><span style=3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px= ">fileSystem</span><span style=3D"font-size:12px">=C2=A0</span><span style= =3D"font-size:12px">at:</span><span style=3D"font-size:12px">=C2=A0</span><= span style=3D"font-size:12px">'</span><span style=3D"font-size:12px">cu= lture</span><span style=3D"font-size:12px">'</span><span style=3D"font-= size:12px">.</span></p><p><span style=3D"font-size:12px">fileSystem</span><= span style=3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px">p= referenceAt:</span><span style=3D"font-size:12px">=C2=A0</span><span style= =3D"font-size:12px">#directory</span><span style=3D"font-size:12px">=C2=A0<= /span><span style=3D"font-size:12px">put:</span><span style=3D"font-size:12= px">=C2=A0</span><span style=3D"font-size:12px">'</span><span style=3D"= font-size:12px">c:\rb</span><span style=3D"font-size:12px">dev\public\</spa= n><span style=3D"font-size:12px">'</span></p><p>As soon as I do this, t= he Seaside server is broken and I can't even launch a browser on it.=C2= =A0 I get this:</p><h1 style=3D"font-size:1.6em;font-weight:normal;line-hei= ght:1.25em;margin-bottom:16px;margin-top:0px;font-family:"Segoe UI&quo= t;,Tahoma,sans-serif">This site can=E2=80=99t be reached</h1><p></p><p styl= e=3D"display:inline;color:rgb(95,99,104);font-family:"Segoe UI",T= ahoma,sans-serif;font-size:15px"><strong style=3D"overflow-wrap: break-word= ;">desktop-m4pvv3o</strong>=C2=A0refused to connect.</p></div><div><p style= =3D"display:inline;color:rgb(95,99,104);font-family:"Segoe UI",Ta= homa,sans-serif;font-size:15px"><br></p></div><div><p style=3D"display:inli= ne;color:rgb(95,99,104);font-family:"Segoe UI",Tahoma,sans-serif;= font-size:15px">So, maybe there is something else to do?</p></div><div><p s= tyle=3D"display:inline;color:rgb(95,99,104);font-family:"Segoe UI"= ;,Tahoma,sans-serif;font-size:15px"><br></p></div><div><p style=3D"display:= inline;color:rgb(95,99,104);font-family:"Segoe UI",Tahoma,sans-se= rif;font-size:15px">-Carl</p></div></div><br><div class=3D"gmail_quote gmai= l_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Sun, Feb 23, 20= 25 at 8:04=E2=80=AFPM Jupiter Jones <<a href=3D"mailto:jupiter.jones@mai= l.com">[email protected]</a>> wrote:<br></div><blockquote class=3D"= gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(20= 4,204,204);padding-left:1ex"><div>Hi Carl,<div><br></div><div>From memory, = you shouldn=E2=80=99t need to call updateRoot: on the libraries - I believe= that=E2=80=99s handled automatically.=C2=A0</div><div><br></div><div>In an= y case, I just installed it to have a look and my educated guess was totall= y wrong :)</div><div><br></div><div>From=C2=A0WAExternalFileLibraryTest-#se= tUp</div><div><br></div><div><div>fileSystem :=3D WAExternalFileLibrary new= .</div><div>WADispatcher new register: fileSystem at: =E2=80=98culture'= </div><div><br></div><div>I guess you might be able to set the directory to= serve files from the UI, or maybe in code with something like=E2=80=A6</di= v><div><br></div><div><span style=3D"color:rgb(0,0,0)">fileSystem=C2=A0</sp= an>preferenceAt: #directory put: =E2=80=98/path/to/files=E2=80=99</div><div= ><br></div><div>If you have no luck, I should have time to give this a go t= onight or tomorrow.</div><div><br><blockquote type=3D"cite"><div>On 24 Feb = 2025, at 10:47=E2=80=AFam, Carl G <<a href=3D"mailto:[email protected]= m" target=3D"_blank">[email protected]</a>> wrote:</div><br><div><div= dir=3D"ltr">Well, thanks for your help but no luck.=C2=A0 =C2=A0The troubl= e is that the WAExternalFileLibrary seems to be broken?=C2=A0 I dunno.=C2= =A0 It throws an exception in this method:<br><br><p><span style=3D"font-si= ze:12px">SeasideRenderLoopContinuation>>updateRoot:=C2=A0</span><span= style=3D"font-size:12px">anHtmlRoot</span></p><p><span style=3D"font-size:= 12px">=C2=A0=C2=A0=C2=A0=C2=A0</span><span style=3D"font-size:12px">|</span= ><span style=3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px"= >charSet</span><span style=3D"font-size:12px">=C2=A0</span><span style=3D"f= ont-size:12px">|</span></p><p><span style=3D"font-size:12px">=C2=A0=C2=A0= =C2=A0=C2=A0</span><span style=3D"font-size:12px">charSet</span><span style= =3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px">:=3D</span>= <span style=3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px">= self</span><span style=3D"font-size:12px">=C2=A0</span><span style=3D"font-= size:12px">application</span><span style=3D"font-size:12px">=C2=A0</span><s= pan style=3D"font-size:12px">contentType</span><span style=3D"font-size:12p= x">=C2=A0</span><span style=3D"font-size:12px">charSet</span><span style=3D= "font-size:12px">.</span></p><p><span style=3D"font-size:12px">=C2=A0=C2=A0= =C2=A0=C2=A0</span><span style=3D"font-size:12px">charSet</span><span style= =3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px">isNil</span= ><span style=3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px"= >ifFalse:</span><span style=3D"font-size:12px">=C2=A0</span><span style=3D"= font-size:12px">[</span></p><p><span style=3D"font-size:12px">=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0</span><span style=3D"font-size:12px">a= nHtmlRoot</span><span style=3D"font-size:12px">=C2=A0</span><span style=3D"= font-size:12px">meta</span><span style=3D"font-size:12px">=C2=A0</span><spa= n style=3D"font-size:12px">charset:</span><span style=3D"font-size:12px">= =C2=A0</span><span style=3D"font-size:12px">charSet</span><span style=3D"fo= nt-size:12px">=C2=A0</span><span style=3D"font-size:12px">]</span><span sty= le=3D"font-size:12px">.</span></p><p><span style=3D"font-size:12px">=C2=A0= =C2=A0=C2=A0=C2=A0</span><span style=3D"font-size:12px">anHtmlRoot</span><s= pan style=3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px">be= Html5</span><span style=3D"font-size:12px">.</span></p><p><span style=3D"fo= nt-size:12px">=C2=A0=C2=A0=C2=A0=C2=A0</span><span style=3D"font-size:12px"= >anHtmlRoot</span><span style=3D"font-size:12px">=C2=A0</span><span style= =3D"font-size:12px">title:</span><span style=3D"font-size:12px">=C2=A0</spa= n><span style=3D"font-size:12px">'</span><span style=3D"font-size:12px"= >Seaside</span><span style=3D"font-size:12px">'</span><span style=3D"fo= nt-size:12px">.</span></p><p><span style=3D"font-size:12px">=C2=A0=C2=A0=C2= =A0=C2=A0</span><span style=3D"font-size:12px">self</span><span style=3D"fo= nt-size:12px">=C2=A0</span><span style=3D"font-size:12px">application</span= ><span style=3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px"= >libraries</span><span style=3D"font-size:12px">=C2=A0</span></p><p><span s= tyle=3D"font-size:12px">=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0</s= pan><span style=3D"font-size:12px">do:</span><span style=3D"font-size:12px"= >=C2=A0</span><span style=3D"font-size:12px">[</span><span style=3D"font-si= ze:12px">=C2=A0</span><span style=3D"font-size:12px">:</span><span style=3D= "font-size:12px">each</span><span style=3D"font-size:12px">=C2=A0</span><sp= an style=3D"font-size:12px">|</span><span style=3D"font-size:12px">=C2=A0</= span><span style=3D"font-size:12px">each</span><span style=3D"font-size:12p= x">=C2=A0</span><span style=3D"font-size:12px">default</span><span style=3D= "font-size:12px">=C2=A0</span><span style=3D"font-size:12px">updateRoot:</s= pan><span style=3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12= px">anHtmlRoot</span><span style=3D"font-size:12px">=C2=A0</span><span styl= e=3D"font-size:12px">]</span><span style=3D"font-size:12px">.</span></p><p>= <span style=3D"font-size:12px">=C2=A0=C2=A0=C2=A0=C2=A0</span><span style= =3D"font-size:12px">self</span><span style=3D"font-size:12px">=C2=A0</span>= <span style=3D"font-size:12px">session</span><span style=3D"font-size:12px"= >=C2=A0</span><span style=3D"font-size:12px">updateRoot:</span><span style= =3D"font-size:12px">=C2=A0</span><span style=3D"font-size:12px">anHtmlRoot<= /span></p><p><span style=3D"font-size:12px">It DNUs when it tried to send #= default to the library.=C2=A0 I wonder if I can make my own subclass of WAF= ileLibrary and extend it to serve files from a disk folder.</span></p><p>It= 's just puzzling that there isn't a ready made way to do this.=C2= =A0 After WAExternalFileLibrary does work in Seaside 2.8.</p><p>I was hopin= g to find an answer in the Seaside book at <a href=3D"http://book.seaside.s= t/book" target=3D"_blank">http://book.seaside.st/book</a> but the web page = is hug or something.=C2=A0 It was working a few days ago.</p><p>Whose bell = do I ring to get that rebooted?</p><p>-Carl</p></div><br><div class=3D"gmai= l_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Sun, Feb 23, 2025 at 5:23= =E2=80=AFPM <<a href=3D"mailto:[email protected]" target=3D"_bl= ank">[email protected]</a>> wrote:<br></div><blockquote class= =3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rg= b(204,204,204);padding-left:1ex"><div>Hi Carl,<div><br></div><div>Disclaime= r: I=E2=80=99ve never used a=C2=A0<span>WAExternalFileLibrary so the follow= ing is an educated guess, but hopefully gives you enough info.</span><br><d= iv><br></div><div>I typically configure these kind of things on creation of= the application with something like a #configureApplication: method on the= class side of my root component...</div><div><br></div><div><div>configure= Application: anApplication</div><div><span style=3D"white-space:pre-wrap"> = </span>anApplication preferenceAt: #sessionClass put: MySession.</div><div>= <span style=3D"white-space:pre-wrap"> </span>anApplication configuration</d= iv><div><span style=3D"white-space:pre-wrap"> </span>addParent: MySystemCo= nfiguration instance.</div><div><span style=3D"white-space:pre-wrap"> </spa= n>anApplication</div><div><span style=3D"white-space:pre-wrap"> </span>add= Library: WAExternalFileLibrary;</div><div><span style=3D"white-space:pre-wr= ap"> </span>addLibrary: JQDevelopmentLibrary.</div><div><span style=3D"whi= te-space:pre-wrap"> </span>anApplication</div><div><span style=3D"white-spa= ce:pre-wrap"> </span>preferenceAt: #directory put: =E2=80=98/path/to/serve= /from=E2=80=99.</div><div><br></div><div>Then call this method from the met= hod that installs the web app=E2=80=A6</div><div><br></div><div><div>regist= er</div><div><span style=3D"white-space:pre-wrap"> </span>self configureApp= lication: (WAAdmin register: self asApplicationAt: =E2=80=98MyAppName')= </div></div><div><br></div><div>Cheers</div></div></div><div><br></div><div= ><br></div><div><br><blockquote type=3D"cite"><div>On 24 Feb 2025, at 8:56= =E2=80=AFam, Carl G <<a href=3D"mailto:[email protected]" target=3D"_= blank">[email protected]</a>> wrote:</div><br><div><div dir=3D"ltr">I= 'm trying a few things trying to make my application serve static files= .=C2=A0 Run BASIC dynamically generates PNG files that are rendered into th= e web page, but I cannot figure out how to make=C2=A0it work after hours of= head banging.=C2=A0 The old version of Seaside allows me to add WAExternal= FileLibrary in the configuration page.=C2=A0 But I cannot do this with Seas= ide 3.5.1 on VW for some reason.=C2=A0 If I try to do the following, I get = a debugger when I launch the app.<div><br></div><div>=C2=A0 (WADispatcher d= efault handlers at: 'runbasicpersonal')=C2=A0<br>=C2=A0 =C2=A0 addL= ibrary: WAExternalFileLibrary<br><br></div><div>If I substitute WAFileLibra= ry it doesn't blow up, but it doesn't seem to do=C2=A0anything eith= er.=C2=A0 Putting a breakpoint in the handle: method for the instance of WA= FileLibrary does not stop.=C2=A0 It seems that the WAFileLibrary is not bei= ng used.=C2=A0 My guess is that it's only for serving 'files' t= hat are in-memory anyways but I tried it just to see if I could anything wo= rk.</div><div><br></div><div>Any ideas?=C2=A0 What the simplest possible wa= y to add external file serving to my Seaside app?=C2=A0 I absolutely do not= want my users to need Apache or something else.=C2=A0 The current version = doesn't require it.</div><div><br></div><div>Thanks in advance.</div><d= iv><br></div><div>-Carl Gundel, author of Run BASIC</div><div><a href=3D"ht= tp://www.runbasic.com/" target=3D"_blank">http://www.runbasic.com</a></div>= </div>_______________________________________________<br>seaside mailing li= st -- <a href=3D"mailto:[email protected]" target=3D"_blan= k">[email protected]</a><br>To unsubscribe send an email t= o <a href=3D"mailto:[email protected]" target=3D"_bl= ank">[email protected]</a><br></div></blockquote><br= ></div></div></blockquote></div> _______________________________________________<br>seaside mailing list -- = <a href=3D"mailto:[email protected]" target=3D"_blank">sea= [email protected]</a><br>To unsubscribe send an email to <a h= ref=3D"mailto:[email protected]" target=3D"_blank">s= [email protected]</a><br></div></blockquote></div><br= ></div></div></blockquote></div> --00000000000080dd44062f17c1c9-- --===============1001524204433457813== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ seaside mailing list -- [email protected] To unsubscribe send an email to [email protected] --===============1001524204433457813==--