erlangweb-users Mailing List for Erlang Web (Page 4)
Brought to you by:
etcerlangweb,
paulgray
You can subscribe to this list here.
| 2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(2) |
Aug
(1) |
Sep
(1) |
Oct
|
Nov
(40) |
Dec
(25) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2009 |
Jan
(7) |
Feb
(17) |
Mar
(10) |
Apr
(3) |
May
(10) |
Jun
(2) |
Jul
(2) |
Aug
(3) |
Sep
(12) |
Oct
(9) |
Nov
(11) |
Dec
(7) |
| 2010 |
Jan
(3) |
Feb
(10) |
Mar
(18) |
Apr
(20) |
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
| 2011 |
Jan
|
Feb
|
Mar
|
Apr
(8) |
May
|
Jun
|
Jul
|
Aug
(6) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
|
From: L. S. <lse...@gm...> - 2009-12-02 17:55:00
|
My mistake. I meant to post to the Yaws list.
I don't want to mix Erlang code and HTML; I intend to use an MVC
architecture. I am trying to test the existing ways to generate
dynamic web content using Erlang. Dynamic pages is one of those
solutions.
Although ErlyWeb is a solution, and it seems to works for others, the
tutorials are not written properly enough to allow someone without
prior knowledge of ErlyWeb to create working examples.
So I'm looking at dynamic pages, appmods, and yaws apps in Yaws.
On 12/1/09, Michal Ptaszek <mic...@er...> wrote:
> Hi,
>
> ----- "L. S." <lse...@gm...> wrote:
>
>> The documentation is like a puzzle with missing pieces.
>>
>> How would the following Yaws snippet example be called in a .yaws
>> file:
>> <erl module=foobar>
>> out(A) ->
>> io:format('This is the foobar module', []).
>> func() ->
>> i_am_exported_from_foobar.
>> </erl>
>>
>
> Erlang Web does not support Yaws' dynamic pages.
> If you would like to move some logic into templates use
> one of the template languages supported (XHTML-based wpart or
> ErlyDTL).
>
> Separating logic from view is a pretty good idea: why do you
> need to put some Erlang code into HTML file?
>
> Best regards,
> --
> Michal Ptaszek
> www.erlang-consulting.com
>
|
|
From: Michal P. <mic...@er...> - 2009-12-01 10:12:18
|
Hi,
----- "L. S." <lse...@gm...> wrote:
> The documentation is like a puzzle with missing pieces.
>
> How would the following Yaws snippet example be called in a .yaws
> file:
> <erl module=foobar>
> out(A) ->
> io:format('This is the foobar module', []).
> func() ->
> i_am_exported_from_foobar.
> </erl>
>
Erlang Web does not support Yaws' dynamic pages.
If you would like to move some logic into templates use
one of the template languages supported (XHTML-based wpart or
ErlyDTL).
Separating logic from view is a pretty good idea: why do you
need to put some Erlang code into HTML file?
Best regards,
--
Michal Ptaszek
www.erlang-consulting.com
|
|
From: L. S. <lse...@gm...> - 2009-11-30 20:01:42
|
The documentation is like a puzzle with missing pieces.
How would the following Yaws snippet example be called in a .yaws file:
<erl module=foobar>
out(A) ->
io:format('This is the foobar module', []).
func() ->
i_am_exported_from_foobar.
</erl>
|
|
From: Michal P. <mic...@er...> - 2009-11-24 17:23:05
|
You are absolutely right: thank you for pointing this out! An error has been corrected. ----- "L. S." <lse...@gm...> wrote: > I have managed to get through Tutorial 1, but not without problems. > Before I go on to Tutorial 2, I want to report an error in #1. > > The section for "wtype_item.erl" does not export "format"; it is > missing the line "-export([format/1])." which gave me problems until > I > compared the web and file text with the downloaded project files. > > Without the export, the project generated a 501 error. > -- Michal Ptaszek www.erlang-consulting.com |
|
From: L. S. <lse...@gm...> - 2009-11-24 17:13:35
|
I have managed to get through Tutorial 1, but not without problems. Before I go on to Tutorial 2, I want to report an error in #1. The section for "wtype_item.erl" does not export "format"; it is missing the line "-export([format/1])." which gave me problems until I compared the web and file text with the downloaded project files. Without the export, the project generated a 501 error. |
|
From: Eric L. <eri...@gm...> - 2009-11-04 07:29:24
|
Ludovic Kuty wrote: > Hi, > > I had the exact same problem and compiling it for my architecture just > worked. > > Here is what I did: > > $ wget http://yaws.hyber.org/download/yaws-1.85.tar.gz > $ tar xfz yaws-1.85.tar.gz > $ cd yaws > $ ./configure > $ make > $ ls ../erlangweb-1.4/lib/yaws-1.85/ > $ cd .. > $ cd erlangweb-1.4 > $ cd lib/ > $ cd yaws-1.85/ > $ rm -rf ebin/ > $ rm -rf include/ > $ rm -rf priv/ > $ cp -r ../../../yaws/ebin/ . > $ cp -r ../../../yaws/include . > $ cp -r ../../../yaws/priv . > $ cd .. > $ cd .. > $ bin/start.erl yaws (EXTRA STEP. MAYBE NOT NECESSARY) > $ bin/start_interactive yaws > > Eric, I didn't have a previous Yaws installation but compiled it from > scratch. Maybe that made a difference compared to your setup. > > Hope that helps. Thanks, Ludovic, it enlightens me. So I checked the private libraries Michal said before, and found that simply copy all of them looks solved this: $cp /usr/lib/erlang/lib/yaws-1.80/priv/lib/*.so ERLANG_WEB_SOURCE_ROOT/lib/yaws-1.85/priv/lib This is because all the private libraries in priv directory are architecture specified. As indicated in the command, the yaws in my machine is not version 1.85 but 1.80. Since from the source codes of yaws, related yaws_sendfile.erl have changed several times after tag 1.80, and yaws would look up the priv directory by -- ebin/../priv --, I prefer using totally 1.80(the pre-installed version), so I : 1 modify the script: ./bin/start_interactive, change the last line to: erl -pa lib/*/ebin -pa /usr/lib/erlang/lib/yaws-1.80/ebin -s e_start start $NODE_TYPE $SERVER $@ 2 modify the config file: ./config/yaws.conf, change the ebin_dir and include_dir configration(for sanity): ebin_dir = /usr/lib/erlang/lib/yaws-1.80/ebin include_dir = /usr/lib/erlang/lib/yaws-1.80/include I works very well now. :D Thanks for both of you again. Eric > > On 3 Nov 2009, at 13:19, Eric Liang wrote: > >> Michal Ptaszek wrote: >>> Hello Eric, >>> >>> Yaws is using some shared libraries, such as sendfile or >>> setuid. Those included in the tarball have been compiled >>> under 64bit architecture: >>> $ file setuid_drv.so >>> setuid_drv.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), >>> dynamically linked, not stripped >>> >>> The problem is when you try to use them on different architecture. >>> The easiest solution is to compile Yaws on your own and just replace >>> lib/yaws-1.85 directory with your one. >>> >>> >> Thanks Michal for your prompt reply. >> >> I've checked the library file ,it is as you said. But I've already >> installed yaws in my machine. >> >> $yaws -v >> yaws 1.80 >> >> $ file /usr/lib/erlang/lib/yaws-1.80/priv/lib/setuid_drv.so >> /usr/lib/erlang/lib/yaws-1.80/priv/lib/setuid_drv.so: ELF 32-bit >> LSB shared object, Intel 80386, version 1 (SYSV), dynamically >> linked, stripped >> >> I've tried to copy the setuid_drv.so to >> ERLANG_WEB_ROOT_DIRECTORY/lib/yaws-1.85/priv/lib/ , it doesn't work. >> And I've checked the yaws.conf, it looks like no configuration about >> how to set the ROOT_DIRECTORY to use the yaws already installed. Do >> you know how to set this? or I have to get the latest yaws-1.85? TIA. >> >>> ----- "Eric Liang" <eri...@gm...> wrote: >>> >>> >>>> Hi all, >>>> I've just tried erlangweb, but unfortunately, the script does't work >>>> with yaws. >>>> >>>> Step by stepy, I followed the erlangweb wiki: >>>> http://wiki.erlang-web.org/Install : >>>> >>>> 1. ./bin/compiler.erl yaws >>>> 2. ./bin/start.erl yaws >>>> 3. ./bin/start_interactive yaws ---- Crash report occured here >>>> >>>> While the command ./bin/start_interactive (no yaws argument) can >>>> start >>>> inets successfully, and I can get the erlangweb-start message from my >>>> browser. >>>> >>>> From the output, I guess this report will be valuable for this >>>> problem: >>>> >>>> =SUPERVISOR REPORT==== 3-Nov-2009::18:19:00 === >>>> Supervisor: {local,yaws_sup_restarts} >>>> Context: start_error >>>> Reason: {'EXIT',{error,could_not_load_driver}} >>>> Offender: [{pid,undefined}, >>>> {name,yaws_sendfile}, >>>> {mfa,{yaws_sendfile_compat,start_link,[]}}, >>>> {restart_type,permanent}, >>>> {shutdown,5000}, >>>> {child_type,worker}] >>>> >>>> I've tested the yaws_sendfile_compat module by calling: >>>> yaws_sendfile_compat:start_link() in the erlang vm, it looks like >>>> works. >>>> >>>> So has anyone here got this problem? or what can I do next? >>>> If anymore information required, please let me know. btw, any >>>> suggestions will be appreciated. >>>> >>>> Thanks in advance. >>>> Eric >>>> >>> >>> Best regards, >>> >> >> ------------------------------------------------------------------------------ >> Come build with us! The BlackBerry(R) Developer Conference in SF, CA >> is the only developer event you need to attend this year. Jumpstart your >> developing skills, take BlackBerry mobile applications to market and >> stay >> ahead of the curve. Join us from November 9 - 12, 2009. Register now! >> http://p.sf.net/sfu/devconference_______________________________________________ >> Erlangweb-users mailing list >> Erl...@li... >> https://lists.sourceforge.net/lists/listinfo/erlangweb-users >> http://www.erlang-web.org/ > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry(R) Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9 - 12, 2009. Register now! > http://p.sf.net/sfu/devconference > ------------------------------------------------------------------------ > > _______________________________________________ > Erlangweb-users mailing list > Erl...@li... > https://lists.sourceforge.net/lists/listinfo/erlangweb-users > http://www.erlang-web.org/ |
|
From: Ludovic K. <ma...@ku...> - 2009-11-03 13:14:36
|
Hi, I had the exact same problem and compiling it for my architecture just worked. Here is what I did: $ wget http://yaws.hyber.org/download/yaws-1.85.tar.gz $ tar xfz yaws-1.85.tar.gz $ cd yaws $ ./configure $ make $ ls ../erlangweb-1.4/lib/yaws-1.85/ $ cd .. $ cd erlangweb-1.4 $ cd lib/ $ cd yaws-1.85/ $ rm -rf ebin/ $ rm -rf include/ $ rm -rf priv/ $ cp -r ../../../yaws/ebin/ . $ cp -r ../../../yaws/include . $ cp -r ../../../yaws/priv . $ cd .. $ cd .. $ bin/start.erl yaws (EXTRA STEP. MAYBE NOT NECESSARY) $ bin/start_interactive yaws Eric, I didn't have a previous Yaws installation but compiled it from scratch. Maybe that made a difference compared to your setup. Hope that helps. On 3 Nov 2009, at 13:19, Eric Liang wrote: > Michal Ptaszek wrote: >> >> Hello Eric, >> >> Yaws is using some shared libraries, such as sendfile or >> setuid. Those included in the tarball have been compiled >> under 64bit architecture: >> $ file setuid_drv.so >> setuid_drv.so: ELF 64-bit LSB shared object, x86-64, version 1 >> (SYSV), >> dynamically linked, not stripped >> >> The problem is when you try to use them on different architecture. >> The easiest solution is to compile Yaws on your own and just replace >> lib/yaws-1.85 directory with your one. >> >> > Thanks Michal for your prompt reply. > > I've checked the library file ,it is as you said. But I've already > installed yaws in my machine. > > $yaws -v > yaws 1.80 > > $ file /usr/lib/erlang/lib/yaws-1.80/priv/lib/setuid_drv.so > /usr/lib/erlang/lib/yaws-1.80/priv/lib/setuid_drv.so: ELF 32-bit LSB > shared object, Intel 80386, version 1 (SYSV), dynamically linked, > stripped > I've tried to copy the setuid_drv.so to ERLANG_WEB_ROOT_DIRECTORY/ > lib/yaws-1.85/priv/lib/ , it doesn't work. > And I've checked the yaws.conf, it looks like no configuration about > how to set the ROOT_DIRECTORY to use the yaws already installed. Do > you know how to set this? or I have to get the latest yaws-1.85? TIA. > >> ----- "Eric Liang" <eri...@gm...> wrote: >> >> >>> Hi all, >>> I've just tried erlangweb, but unfortunately, the script does't work >>> with yaws. >>> >>> Step by stepy, I followed the erlangweb wiki: >>> http://wiki.erlang-web.org/Install : >>> >>> 1. ./bin/compiler.erl yaws >>> 2. ./bin/start.erl yaws >>> 3. ./bin/start_interactive yaws ---- Crash report occured here >>> >>> While the command ./bin/start_interactive (no yaws argument) can >>> start >>> inets successfully, and I can get the erlangweb-start message from >>> my >>> browser. >>> >>> From the output, I guess this report will be valuable for this >>> problem: >>> >>> =SUPERVISOR REPORT==== 3-Nov-2009::18:19:00 === >>> Supervisor: {local,yaws_sup_restarts} >>> Context: start_error >>> Reason: {'EXIT',{error,could_not_load_driver}} >>> Offender: [{pid,undefined}, >>> {name,yaws_sendfile}, >>> {mfa,{yaws_sendfile_compat,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,5000}, >>> {child_type,worker}] >>> >>> I've tested the yaws_sendfile_compat module by calling: >>> yaws_sendfile_compat:start_link() in the erlang vm, it looks like >>> works. >>> >>> So has anyone here got this problem? or what can I do next? >>> If anymore information required, please let me know. btw, any >>> suggestions will be appreciated. >>> >>> Thanks in advance. >>> Eric >>> >>> ******************************************************************************************************* >>> The following is the whole output: >>> >>> Eshell V5.6.5 (abort with ^G) >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,sasl_safe_sup} >>> started: [{pid,<0.37.0>}, >>> {name,alarm_handler}, >>> {mfa,{alarm_handler,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,sasl_safe_sup} >>> started: [{pid,<0.38.0>}, >>> {name,overload}, >>> {mfa,{overload,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,sasl_sup} >>> started: [{pid,<0.36.0>}, >>> {name,sasl_safe_sup}, >>> {mfa, >>> {supervisor,start_link, >>> >>> [{local,sasl_safe_sup},sasl,safe]}}, >>> {restart_type,permanent}, >>> {shutdown,infinity}, >>> {child_type,supervisor}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,sasl_sup} >>> started: [{pid,<0.39.0>}, >>> {name,release_handler}, >>> {mfa,{release_handler,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> application: sasl >>> started_at: nonode@nohost >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,ssl_sup} >>> started: [{pid,<0.45.0>}, >>> {name,ssl_broker_sup}, >>> {mfa,{ssl_broker_sup,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,supervisor}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,ssl_sup} >>> started: [{pid,<0.46.0>}, >>> {name,ssl_manager}, >>> {mfa,{ssl_manager,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,4000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,ssl_sup} >>> started: [{pid,<0.47.0>}, >>> {name,ssl_connection}, >>> {mfa,{ssl_connection_sup,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,4000}, >>> {child_type,supervisor}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> application: ssl >>> started_at: nonode@nohost >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,crypto_sup} >>> started: [{pid,<0.52.0>}, >>> {name,crypto_server}, >>> {mfa,{crypto_server,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> application: crypto >>> started_at: nonode@nohost >>> 1> >>> =INFO REPORT==== 3-Nov-2009::19:35:46 === >>> e_lang module: error during loading file: >>> >>> "/home/sunny/codes_in_mercurial/erlang-web/config/languages/ >>> en.conf", >>> reason:enoent >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,kernel_safe_sup} >>> started: [{pid,<0.62.0>}, >>> {name,timer_server}, >>> {mfa,{timer,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,1000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_sup} >>> started: [{pid,<0.68.0>}, >>> {name,mnesia_event}, >>> {mfa,{mnesia_sup,start_event,[]}}, >>> {restart_type,permanent}, >>> {shutdown,30000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_kernel_sup} >>> started: [{pid,<0.70.0>}, >>> {name,mnesia_monitor}, >>> {mfa,{mnesia_monitor,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,3000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_kernel_sup} >>> started: [{pid,<0.71.0>}, >>> {name,mnesia_subscr}, >>> {mfa,{mnesia_subscr,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,3000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_kernel_sup} >>> started: [{pid,<0.72.0>}, >>> {name,mnesia_locker}, >>> {mfa,{mnesia_locker,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,3000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_kernel_sup} >>> started: [{pid,<0.73.0>}, >>> {name,mnesia_recover}, >>> {mfa,{mnesia_recover,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,180000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_kernel_sup} >>> started: [{pid,<0.74.0>}, >>> {name,mnesia_tm}, >>> {mfa,{mnesia_tm,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,30000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_kernel_sup} >>> started: [{pid,<0.75.0>}, >>> {name,mnesia_checkpoint_sup}, >>> {mfa,{mnesia_checkpoint_sup,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,infinity}, >>> {child_type,supervisor}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_kernel_sup} >>> started: [{pid,<0.76.0>}, >>> {name,mnesia_snmp_sup}, >>> {mfa,{mnesia_snmp_sup,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,infinity}, >>> {child_type,supervisor}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_kernel_sup} >>> started: [{pid,<0.77.0>}, >>> {name,mnesia_controller}, >>> {mfa,{mnesia_controller,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,3000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_kernel_sup} >>> started: [{pid,<0.78.0>}, >>> {name,mnesia_late_loader}, >>> {mfa,{mnesia_late_loader,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,3000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,mnesia_sup} >>> started: [{pid,<0.69.0>}, >>> {name,mnesia_kernel_sup}, >>> {mfa,{mnesia_kernel_sup,start,[]}}, >>> {restart_type,permanent}, >>> {shutdown,infinity}, >>> {child_type,supervisor}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> application: mnesia >>> started_at: nonode@nohost >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,eptic} >>> started: [{pid,<0.81.0>}, >>> {name,e_hook}, >>> {mfa,{e_hook,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,eptic} >>> started: [{pid,<0.82.0>}, >>> {name,e_dict}, >>> {mfa,{e_dict,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,eptic} >>> started: [{pid,<0.83.0>}, >>> {name,e_session}, >>> {mfa,{e_session,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,eptic} >>> started: [{pid,<0.84.0>}, >>> {name,e_component}, >>> {mfa,{e_component,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,eptic} >>> started: [{pid,<0.85.0>}, >>> {name,e_logger}, >>> {mfa,{e_logger,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,2000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> application: eptic >>> started_at: nonode@nohost >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> application: wpart >>> started_at: nonode@nohost >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> application: wparts >>> started_at: nonode@nohost >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,yaws_sup} >>> started: [{pid,<0.97.0>}, >>> {name,yaws_log}, >>> {mfa,{yaws_log,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,5000}, >>> {child_type,worker}] >>> 1> >>> =INFO REPORT==== 3-Nov-2009::19:35:46 === >>> Yaws: Using config file >>> /home/sunny/codes_in_mercurial/erlang-web/config/yaws.conf >>> 1> >>> =INFO REPORT==== 3-Nov-2009::19:35:46 === >>> Ctlfile : /home/sunny/.yaws/yaws/erlangweb_test/CTL >>> 1> >>> =INFO REPORT==== 3-Nov-2009::19:35:46 === >>> Yaws: Listening to 0.0.0.0:8000 for <1> virtual servers: >>> - http://localhost:8000 under >>> /home/sunny/codes_in_mercurial/erlang-web/docroot >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,yaws_sup} >>> started: [{pid,<0.98.0>}, >>> {name,yaws_server}, >>> {mfa, >>> {yaws_server,start_link, >>> [{env,false,false,false, >>> {file, >>> >>> "/home/sunny/codes_in_mercurial/erlang-web/config/yaws.conf"}, >>> false,false,"default"}]}}, >>> {restart_type,permanent}, >>> {shutdown,5000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,yaws_sup_restarts} >>> started: [{pid,<0.108.0>}, >>> {name,yaws_session_server}, >>> {mfa,{yaws_session_server,start_link, >>> []}}, >>> {restart_type,permanent}, >>> {shutdown,5000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,yaws_sup_restarts} >>> started: [{pid,<0.110.0>}, >>> {name,yaws_rss}, >>> {mfa,{yaws_rss,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,5000}, >>> {child_type,worker}] >>> 1> >>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === >>> supervisor: {local,yaws_sup_restarts} >>> started: [{pid,<0.111.0>}, >>> {name,yaws_event_manager}, >>> {mfa, >>> {gen_event,start_link, >>> [{local,yaws_event_manager}]}}, >>> {restart_type,permanent}, >>> {shutdown,5000}, >>> {child_type,worker}] >>> 1> >>> =SUPERVISOR REPORT==== 3-Nov-2009::19:35:46 === >>> Supervisor: {local,yaws_sup_restarts} >>> Context: start_error >>> Reason: {'EXIT',{error,could_not_load_driver}} >>> Offender: [{pid,undefined}, >>> {name,yaws_sendfile}, >>> {mfa,{yaws_sendfile_compat,start_link,[]}}, >>> {restart_type,permanent}, >>> {shutdown,5000}, >>> {child_type,worker}] >>> >>> 1> >>> =SUPERVISOR REPORT==== 3-Nov-2009::19:35:46 === >>> Supervisor: {local,yaws_sup} >>> Context: start_error >>> Reason: shutdown >>> Offender: [{pid,undefined}, >>> {name,yaws_sup_restarts}, >>> {mfa,{yaws_sup_restarts,start_link,[]}}, >>> {restart_type,transient}, >>> {shutdown,infinity}, >>> {child_type,supervisor}] >>> >>> 1> >>> =CRASH REPORT==== 3-Nov-2009::19:35:46 === >>> crasher: >>> pid: <0.94.0> >>> registered_name: [] >>> exception exit: {shutdown,{yaws_app,start,[normal,[]]}} >>> in function application_master:init/4 >>> initial call: application_master:init/4 >>> ancestors: [<0.93.0>] >>> messages: [{'EXIT',<0.95.0>,normal}] >>> links: [<0.93.0>,<0.5.0>] >>> dictionary: [] >>> trap_exit: true >>> status: running >>> heap_size: 233 >>> stack_size: 23 >>> reductions: 101 >>> neighbours: >>> 1> >>> =INFO REPORT==== 3-Nov-2009::19:35:46 === >>> application: yaws >>> exited: {shutdown,{yaws_app,start,[normal,[]]}} >>> type: temporary >>> 1> >>> >> >> Best regards, >> > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry(R) Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart > your > developing skills, take BlackBerry mobile applications to market and > stay > ahead of the curve. Join us from November 9 - 12, 2009. Register now! > http://p.sf.net/sfu/devconference_______________________________________________ > Erlangweb-users mailing list > Erl...@li... > https://lists.sourceforge.net/lists/listinfo/erlangweb-users > http://www.erlang-web.org/ |
|
From: Eric L. <eri...@gm...> - 2009-11-03 12:25:44
|
Michal Ptaszek wrote:
> Hello Eric,
>
> Yaws is using some shared libraries, such as sendfile or
> setuid. Those included in the tarball have been compiled
> under 64bit architecture:
> $ file setuid_drv.so
> setuid_drv.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV),
> dynamically linked, not stripped
>
> The problem is when you try to use them on different architecture.
> The easiest solution is to compile Yaws on your own and just replace
> lib/yaws-1.85 directory with your one.
>
>
Thanks Michal for your prompt reply.
I've checked the library file ,it is as you said. But I've already
installed yaws in my machine.
$yaws -v
yaws 1.80
$ file /usr/lib/erlang/lib/yaws-1.80/priv/lib/setuid_drv.so
/usr/lib/erlang/lib/yaws-1.80/priv/lib/setuid_drv.so: ELF 32-bit LSB
shared object, Intel 80386, version 1 (SYSV), dynamically linked,
stripped
I've tried to copy the setuid_drv.so to
ERLANG_WEB_ROOT_DIRECTORY/lib/yaws-1.85/priv/lib/ , it doesn't work.
And I've checked the yaws.conf, it looks like no configuration about how
to set the ROOT_DIRECTORY to use the yaws already installed. Do you know
how to set this? or I have to get the latest yaws-1.85? TIA.
> ----- "Eric Liang" <eri...@gm...> wrote:
>
>
>> Hi all,
>> I've just tried erlangweb, but unfortunately, the script does't work
>> with yaws.
>>
>> Step by stepy, I followed the erlangweb wiki:
>> http://wiki.erlang-web.org/Install :
>>
>> 1. ./bin/compiler.erl yaws
>> 2. ./bin/start.erl yaws
>> 3. ./bin/start_interactive yaws ---- Crash report occured here
>>
>> While the command ./bin/start_interactive (no yaws argument) can
>> start
>> inets successfully, and I can get the erlangweb-start message from my
>> browser.
>>
>> From the output, I guess this report will be valuable for this
>> problem:
>>
>> =SUPERVISOR REPORT==== 3-Nov-2009::18:19:00 ===
>> Supervisor: {local,yaws_sup_restarts}
>> Context: start_error
>> Reason: {'EXIT',{error,could_not_load_driver}}
>> Offender: [{pid,undefined},
>> {name,yaws_sendfile},
>> {mfa,{yaws_sendfile_compat,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,5000},
>> {child_type,worker}]
>>
>> I've tested the yaws_sendfile_compat module by calling:
>> yaws_sendfile_compat:start_link() in the erlang vm, it looks like
>> works.
>>
>> So has anyone here got this problem? or what can I do next?
>> If anymore information required, please let me know. btw, any
>> suggestions will be appreciated.
>>
>> Thanks in advance.
>> Eric
>>
>> *******************************************************************************************************
>> The following is the whole output:
>>
>> Eshell V5.6.5 (abort with ^G)
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,sasl_safe_sup}
>> started: [{pid,<0.37.0>},
>> {name,alarm_handler},
>> {mfa,{alarm_handler,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,sasl_safe_sup}
>> started: [{pid,<0.38.0>},
>> {name,overload},
>> {mfa,{overload,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,sasl_sup}
>> started: [{pid,<0.36.0>},
>> {name,sasl_safe_sup},
>> {mfa,
>> {supervisor,start_link,
>>
>> [{local,sasl_safe_sup},sasl,safe]}},
>> {restart_type,permanent},
>> {shutdown,infinity},
>> {child_type,supervisor}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,sasl_sup}
>> started: [{pid,<0.39.0>},
>> {name,release_handler},
>> {mfa,{release_handler,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> application: sasl
>> started_at: nonode@nohost
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,ssl_sup}
>> started: [{pid,<0.45.0>},
>> {name,ssl_broker_sup},
>> {mfa,{ssl_broker_sup,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,supervisor}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,ssl_sup}
>> started: [{pid,<0.46.0>},
>> {name,ssl_manager},
>> {mfa,{ssl_manager,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,4000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,ssl_sup}
>> started: [{pid,<0.47.0>},
>> {name,ssl_connection},
>> {mfa,{ssl_connection_sup,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,4000},
>> {child_type,supervisor}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> application: ssl
>> started_at: nonode@nohost
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,crypto_sup}
>> started: [{pid,<0.52.0>},
>> {name,crypto_server},
>> {mfa,{crypto_server,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> application: crypto
>> started_at: nonode@nohost
>> 1>
>> =INFO REPORT==== 3-Nov-2009::19:35:46 ===
>> e_lang module: error during loading file:
>>
>> "/home/sunny/codes_in_mercurial/erlang-web/config/languages/en.conf",
>> reason:enoent
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,kernel_safe_sup}
>> started: [{pid,<0.62.0>},
>> {name,timer_server},
>> {mfa,{timer,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,1000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_sup}
>> started: [{pid,<0.68.0>},
>> {name,mnesia_event},
>> {mfa,{mnesia_sup,start_event,[]}},
>> {restart_type,permanent},
>> {shutdown,30000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_kernel_sup}
>> started: [{pid,<0.70.0>},
>> {name,mnesia_monitor},
>> {mfa,{mnesia_monitor,start,[]}},
>> {restart_type,permanent},
>> {shutdown,3000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_kernel_sup}
>> started: [{pid,<0.71.0>},
>> {name,mnesia_subscr},
>> {mfa,{mnesia_subscr,start,[]}},
>> {restart_type,permanent},
>> {shutdown,3000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_kernel_sup}
>> started: [{pid,<0.72.0>},
>> {name,mnesia_locker},
>> {mfa,{mnesia_locker,start,[]}},
>> {restart_type,permanent},
>> {shutdown,3000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_kernel_sup}
>> started: [{pid,<0.73.0>},
>> {name,mnesia_recover},
>> {mfa,{mnesia_recover,start,[]}},
>> {restart_type,permanent},
>> {shutdown,180000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_kernel_sup}
>> started: [{pid,<0.74.0>},
>> {name,mnesia_tm},
>> {mfa,{mnesia_tm,start,[]}},
>> {restart_type,permanent},
>> {shutdown,30000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_kernel_sup}
>> started: [{pid,<0.75.0>},
>> {name,mnesia_checkpoint_sup},
>> {mfa,{mnesia_checkpoint_sup,start,[]}},
>> {restart_type,permanent},
>> {shutdown,infinity},
>> {child_type,supervisor}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_kernel_sup}
>> started: [{pid,<0.76.0>},
>> {name,mnesia_snmp_sup},
>> {mfa,{mnesia_snmp_sup,start,[]}},
>> {restart_type,permanent},
>> {shutdown,infinity},
>> {child_type,supervisor}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_kernel_sup}
>> started: [{pid,<0.77.0>},
>> {name,mnesia_controller},
>> {mfa,{mnesia_controller,start,[]}},
>> {restart_type,permanent},
>> {shutdown,3000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_kernel_sup}
>> started: [{pid,<0.78.0>},
>> {name,mnesia_late_loader},
>> {mfa,{mnesia_late_loader,start,[]}},
>> {restart_type,permanent},
>> {shutdown,3000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,mnesia_sup}
>> started: [{pid,<0.69.0>},
>> {name,mnesia_kernel_sup},
>> {mfa,{mnesia_kernel_sup,start,[]}},
>> {restart_type,permanent},
>> {shutdown,infinity},
>> {child_type,supervisor}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> application: mnesia
>> started_at: nonode@nohost
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,eptic}
>> started: [{pid,<0.81.0>},
>> {name,e_hook},
>> {mfa,{e_hook,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,eptic}
>> started: [{pid,<0.82.0>},
>> {name,e_dict},
>> {mfa,{e_dict,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,eptic}
>> started: [{pid,<0.83.0>},
>> {name,e_session},
>> {mfa,{e_session,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,eptic}
>> started: [{pid,<0.84.0>},
>> {name,e_component},
>> {mfa,{e_component,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,eptic}
>> started: [{pid,<0.85.0>},
>> {name,e_logger},
>> {mfa,{e_logger,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,2000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> application: eptic
>> started_at: nonode@nohost
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> application: wpart
>> started_at: nonode@nohost
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> application: wparts
>> started_at: nonode@nohost
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,yaws_sup}
>> started: [{pid,<0.97.0>},
>> {name,yaws_log},
>> {mfa,{yaws_log,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,5000},
>> {child_type,worker}]
>> 1>
>> =INFO REPORT==== 3-Nov-2009::19:35:46 ===
>> Yaws: Using config file
>> /home/sunny/codes_in_mercurial/erlang-web/config/yaws.conf
>> 1>
>> =INFO REPORT==== 3-Nov-2009::19:35:46 ===
>> Ctlfile : /home/sunny/.yaws/yaws/erlangweb_test/CTL
>> 1>
>> =INFO REPORT==== 3-Nov-2009::19:35:46 ===
>> Yaws: Listening to 0.0.0.0:8000 for <1> virtual servers:
>> - http://localhost:8000 under
>> /home/sunny/codes_in_mercurial/erlang-web/docroot
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,yaws_sup}
>> started: [{pid,<0.98.0>},
>> {name,yaws_server},
>> {mfa,
>> {yaws_server,start_link,
>> [{env,false,false,false,
>> {file,
>>
>> "/home/sunny/codes_in_mercurial/erlang-web/config/yaws.conf"},
>> false,false,"default"}]}},
>> {restart_type,permanent},
>> {shutdown,5000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,yaws_sup_restarts}
>> started: [{pid,<0.108.0>},
>> {name,yaws_session_server},
>> {mfa,{yaws_session_server,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,5000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,yaws_sup_restarts}
>> started: [{pid,<0.110.0>},
>> {name,yaws_rss},
>> {mfa,{yaws_rss,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,5000},
>> {child_type,worker}]
>> 1>
>> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 ===
>> supervisor: {local,yaws_sup_restarts}
>> started: [{pid,<0.111.0>},
>> {name,yaws_event_manager},
>> {mfa,
>> {gen_event,start_link,
>> [{local,yaws_event_manager}]}},
>> {restart_type,permanent},
>> {shutdown,5000},
>> {child_type,worker}]
>> 1>
>> =SUPERVISOR REPORT==== 3-Nov-2009::19:35:46 ===
>> Supervisor: {local,yaws_sup_restarts}
>> Context: start_error
>> Reason: {'EXIT',{error,could_not_load_driver}}
>> Offender: [{pid,undefined},
>> {name,yaws_sendfile},
>> {mfa,{yaws_sendfile_compat,start_link,[]}},
>> {restart_type,permanent},
>> {shutdown,5000},
>> {child_type,worker}]
>>
>> 1>
>> =SUPERVISOR REPORT==== 3-Nov-2009::19:35:46 ===
>> Supervisor: {local,yaws_sup}
>> Context: start_error
>> Reason: shutdown
>> Offender: [{pid,undefined},
>> {name,yaws_sup_restarts},
>> {mfa,{yaws_sup_restarts,start_link,[]}},
>> {restart_type,transient},
>> {shutdown,infinity},
>> {child_type,supervisor}]
>>
>> 1>
>> =CRASH REPORT==== 3-Nov-2009::19:35:46 ===
>> crasher:
>> pid: <0.94.0>
>> registered_name: []
>> exception exit: {shutdown,{yaws_app,start,[normal,[]]}}
>> in function application_master:init/4
>> initial call: application_master:init/4
>> ancestors: [<0.93.0>]
>> messages: [{'EXIT',<0.95.0>,normal}]
>> links: [<0.93.0>,<0.5.0>]
>> dictionary: []
>> trap_exit: true
>> status: running
>> heap_size: 233
>> stack_size: 23
>> reductions: 101
>> neighbours:
>> 1>
>> =INFO REPORT==== 3-Nov-2009::19:35:46 ===
>> application: yaws
>> exited: {shutdown,{yaws_app,start,[normal,[]]}}
>> type: temporary
>> 1>
>>
>
> Best regards,
>
|
|
From: Michal P. <mic...@er...> - 2009-11-03 11:50:07
|
Hello Eric, Yaws is using some shared libraries, such as sendfile or setuid. Those included in the tarball have been compiled under 64bit architecture: $ file setuid_drv.so setuid_drv.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped The problem is when you try to use them on different architecture. The easiest solution is to compile Yaws on your own and just replace lib/yaws-1.85 directory with your one. ----- "Eric Liang" <eri...@gm...> wrote: > Hi all, > I've just tried erlangweb, but unfortunately, the script does't work > with yaws. > > Step by stepy, I followed the erlangweb wiki: > http://wiki.erlang-web.org/Install : > > 1. ./bin/compiler.erl yaws > 2. ./bin/start.erl yaws > 3. ./bin/start_interactive yaws ---- Crash report occured here > > While the command ./bin/start_interactive (no yaws argument) can > start > inets successfully, and I can get the erlangweb-start message from my > browser. > > From the output, I guess this report will be valuable for this > problem: > > =SUPERVISOR REPORT==== 3-Nov-2009::18:19:00 === > Supervisor: {local,yaws_sup_restarts} > Context: start_error > Reason: {'EXIT',{error,could_not_load_driver}} > Offender: [{pid,undefined}, > {name,yaws_sendfile}, > {mfa,{yaws_sendfile_compat,start_link,[]}}, > {restart_type,permanent}, > {shutdown,5000}, > {child_type,worker}] > > I've tested the yaws_sendfile_compat module by calling: > yaws_sendfile_compat:start_link() in the erlang vm, it looks like > works. > > So has anyone here got this problem? or what can I do next? > If anymore information required, please let me know. btw, any > suggestions will be appreciated. > > Thanks in advance. > Eric > > ******************************************************************************************************* > The following is the whole output: > > Eshell V5.6.5 (abort with ^G) > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,sasl_safe_sup} > started: [{pid,<0.37.0>}, > {name,alarm_handler}, > {mfa,{alarm_handler,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,sasl_safe_sup} > started: [{pid,<0.38.0>}, > {name,overload}, > {mfa,{overload,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,sasl_sup} > started: [{pid,<0.36.0>}, > {name,sasl_safe_sup}, > {mfa, > {supervisor,start_link, > > [{local,sasl_safe_sup},sasl,safe]}}, > {restart_type,permanent}, > {shutdown,infinity}, > {child_type,supervisor}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,sasl_sup} > started: [{pid,<0.39.0>}, > {name,release_handler}, > {mfa,{release_handler,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > application: sasl > started_at: nonode@nohost > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,ssl_sup} > started: [{pid,<0.45.0>}, > {name,ssl_broker_sup}, > {mfa,{ssl_broker_sup,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,supervisor}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,ssl_sup} > started: [{pid,<0.46.0>}, > {name,ssl_manager}, > {mfa,{ssl_manager,start_link,[]}}, > {restart_type,permanent}, > {shutdown,4000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,ssl_sup} > started: [{pid,<0.47.0>}, > {name,ssl_connection}, > {mfa,{ssl_connection_sup,start_link,[]}}, > {restart_type,permanent}, > {shutdown,4000}, > {child_type,supervisor}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > application: ssl > started_at: nonode@nohost > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,crypto_sup} > started: [{pid,<0.52.0>}, > {name,crypto_server}, > {mfa,{crypto_server,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > application: crypto > started_at: nonode@nohost > 1> > =INFO REPORT==== 3-Nov-2009::19:35:46 === > e_lang module: error during loading file: > > "/home/sunny/codes_in_mercurial/erlang-web/config/languages/en.conf", > reason:enoent > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,kernel_safe_sup} > started: [{pid,<0.62.0>}, > {name,timer_server}, > {mfa,{timer,start_link,[]}}, > {restart_type,permanent}, > {shutdown,1000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_sup} > started: [{pid,<0.68.0>}, > {name,mnesia_event}, > {mfa,{mnesia_sup,start_event,[]}}, > {restart_type,permanent}, > {shutdown,30000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_kernel_sup} > started: [{pid,<0.70.0>}, > {name,mnesia_monitor}, > {mfa,{mnesia_monitor,start,[]}}, > {restart_type,permanent}, > {shutdown,3000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_kernel_sup} > started: [{pid,<0.71.0>}, > {name,mnesia_subscr}, > {mfa,{mnesia_subscr,start,[]}}, > {restart_type,permanent}, > {shutdown,3000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_kernel_sup} > started: [{pid,<0.72.0>}, > {name,mnesia_locker}, > {mfa,{mnesia_locker,start,[]}}, > {restart_type,permanent}, > {shutdown,3000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_kernel_sup} > started: [{pid,<0.73.0>}, > {name,mnesia_recover}, > {mfa,{mnesia_recover,start,[]}}, > {restart_type,permanent}, > {shutdown,180000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_kernel_sup} > started: [{pid,<0.74.0>}, > {name,mnesia_tm}, > {mfa,{mnesia_tm,start,[]}}, > {restart_type,permanent}, > {shutdown,30000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_kernel_sup} > started: [{pid,<0.75.0>}, > {name,mnesia_checkpoint_sup}, > {mfa,{mnesia_checkpoint_sup,start,[]}}, > {restart_type,permanent}, > {shutdown,infinity}, > {child_type,supervisor}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_kernel_sup} > started: [{pid,<0.76.0>}, > {name,mnesia_snmp_sup}, > {mfa,{mnesia_snmp_sup,start,[]}}, > {restart_type,permanent}, > {shutdown,infinity}, > {child_type,supervisor}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_kernel_sup} > started: [{pid,<0.77.0>}, > {name,mnesia_controller}, > {mfa,{mnesia_controller,start,[]}}, > {restart_type,permanent}, > {shutdown,3000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_kernel_sup} > started: [{pid,<0.78.0>}, > {name,mnesia_late_loader}, > {mfa,{mnesia_late_loader,start,[]}}, > {restart_type,permanent}, > {shutdown,3000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,mnesia_sup} > started: [{pid,<0.69.0>}, > {name,mnesia_kernel_sup}, > {mfa,{mnesia_kernel_sup,start,[]}}, > {restart_type,permanent}, > {shutdown,infinity}, > {child_type,supervisor}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > application: mnesia > started_at: nonode@nohost > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,eptic} > started: [{pid,<0.81.0>}, > {name,e_hook}, > {mfa,{e_hook,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,eptic} > started: [{pid,<0.82.0>}, > {name,e_dict}, > {mfa,{e_dict,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,eptic} > started: [{pid,<0.83.0>}, > {name,e_session}, > {mfa,{e_session,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,eptic} > started: [{pid,<0.84.0>}, > {name,e_component}, > {mfa,{e_component,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,eptic} > started: [{pid,<0.85.0>}, > {name,e_logger}, > {mfa,{e_logger,start_link,[]}}, > {restart_type,permanent}, > {shutdown,2000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > application: eptic > started_at: nonode@nohost > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > application: wpart > started_at: nonode@nohost > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > application: wparts > started_at: nonode@nohost > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,yaws_sup} > started: [{pid,<0.97.0>}, > {name,yaws_log}, > {mfa,{yaws_log,start_link,[]}}, > {restart_type,permanent}, > {shutdown,5000}, > {child_type,worker}] > 1> > =INFO REPORT==== 3-Nov-2009::19:35:46 === > Yaws: Using config file > /home/sunny/codes_in_mercurial/erlang-web/config/yaws.conf > 1> > =INFO REPORT==== 3-Nov-2009::19:35:46 === > Ctlfile : /home/sunny/.yaws/yaws/erlangweb_test/CTL > 1> > =INFO REPORT==== 3-Nov-2009::19:35:46 === > Yaws: Listening to 0.0.0.0:8000 for <1> virtual servers: > - http://localhost:8000 under > /home/sunny/codes_in_mercurial/erlang-web/docroot > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,yaws_sup} > started: [{pid,<0.98.0>}, > {name,yaws_server}, > {mfa, > {yaws_server,start_link, > [{env,false,false,false, > {file, > > "/home/sunny/codes_in_mercurial/erlang-web/config/yaws.conf"}, > false,false,"default"}]}}, > {restart_type,permanent}, > {shutdown,5000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,yaws_sup_restarts} > started: [{pid,<0.108.0>}, > {name,yaws_session_server}, > {mfa,{yaws_session_server,start_link,[]}}, > {restart_type,permanent}, > {shutdown,5000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,yaws_sup_restarts} > started: [{pid,<0.110.0>}, > {name,yaws_rss}, > {mfa,{yaws_rss,start_link,[]}}, > {restart_type,permanent}, > {shutdown,5000}, > {child_type,worker}] > 1> > =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === > supervisor: {local,yaws_sup_restarts} > started: [{pid,<0.111.0>}, > {name,yaws_event_manager}, > {mfa, > {gen_event,start_link, > [{local,yaws_event_manager}]}}, > {restart_type,permanent}, > {shutdown,5000}, > {child_type,worker}] > 1> > =SUPERVISOR REPORT==== 3-Nov-2009::19:35:46 === > Supervisor: {local,yaws_sup_restarts} > Context: start_error > Reason: {'EXIT',{error,could_not_load_driver}} > Offender: [{pid,undefined}, > {name,yaws_sendfile}, > {mfa,{yaws_sendfile_compat,start_link,[]}}, > {restart_type,permanent}, > {shutdown,5000}, > {child_type,worker}] > > 1> > =SUPERVISOR REPORT==== 3-Nov-2009::19:35:46 === > Supervisor: {local,yaws_sup} > Context: start_error > Reason: shutdown > Offender: [{pid,undefined}, > {name,yaws_sup_restarts}, > {mfa,{yaws_sup_restarts,start_link,[]}}, > {restart_type,transient}, > {shutdown,infinity}, > {child_type,supervisor}] > > 1> > =CRASH REPORT==== 3-Nov-2009::19:35:46 === > crasher: > pid: <0.94.0> > registered_name: [] > exception exit: {shutdown,{yaws_app,start,[normal,[]]}} > in function application_master:init/4 > initial call: application_master:init/4 > ancestors: [<0.93.0>] > messages: [{'EXIT',<0.95.0>,normal}] > links: [<0.93.0>,<0.5.0>] > dictionary: [] > trap_exit: true > status: running > heap_size: 233 > stack_size: 23 > reductions: 101 > neighbours: > 1> > =INFO REPORT==== 3-Nov-2009::19:35:46 === > application: yaws > exited: {shutdown,{yaws_app,start,[normal,[]]}} > type: temporary > 1> Best regards, -- Michal Ptaszek www.erlang-consulting.com |
|
From: Eric L. <eri...@gm...> - 2009-11-03 11:42:43
|
Hi all, I've just tried erlangweb, but unfortunately, the script does't work with yaws. Step by stepy, I followed the erlangweb wiki: http://wiki.erlang-web.org/Install : 1. ./bin/compiler.erl yaws 2. ./bin/start.erl yaws 3. ./bin/start_interactive yaws ---- Crash report occured here While the command ./bin/start_interactive (no yaws argument) can start inets successfully, and I can get the erlangweb-start message from my browser. From the output, I guess this report will be valuable for this problem: =SUPERVISOR REPORT==== 3-Nov-2009::18:19:00 === Supervisor: {local,yaws_sup_restarts} Context: start_error Reason: {'EXIT',{error,could_not_load_driver}} Offender: [{pid,undefined}, {name,yaws_sendfile}, {mfa,{yaws_sendfile_compat,start_link,[]}}, {restart_type,permanent}, {shutdown,5000}, {child_type,worker}] I've tested the yaws_sendfile_compat module by calling: yaws_sendfile_compat:start_link() in the erlang vm, it looks like works. So has anyone here got this problem? or what can I do next? If anymore information required, please let me know. btw, any suggestions will be appreciated. Thanks in advance. Eric ******************************************************************************************************* The following is the whole output: Eshell V5.6.5 (abort with ^G) 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,sasl_safe_sup} started: [{pid,<0.37.0>}, {name,alarm_handler}, {mfa,{alarm_handler,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,sasl_safe_sup} started: [{pid,<0.38.0>}, {name,overload}, {mfa,{overload,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,sasl_sup} started: [{pid,<0.36.0>}, {name,sasl_safe_sup}, {mfa, {supervisor,start_link, [{local,sasl_safe_sup},sasl,safe]}}, {restart_type,permanent}, {shutdown,infinity}, {child_type,supervisor}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,sasl_sup} started: [{pid,<0.39.0>}, {name,release_handler}, {mfa,{release_handler,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === application: sasl started_at: nonode@nohost 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,ssl_sup} started: [{pid,<0.45.0>}, {name,ssl_broker_sup}, {mfa,{ssl_broker_sup,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,supervisor}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,ssl_sup} started: [{pid,<0.46.0>}, {name,ssl_manager}, {mfa,{ssl_manager,start_link,[]}}, {restart_type,permanent}, {shutdown,4000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,ssl_sup} started: [{pid,<0.47.0>}, {name,ssl_connection}, {mfa,{ssl_connection_sup,start_link,[]}}, {restart_type,permanent}, {shutdown,4000}, {child_type,supervisor}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === application: ssl started_at: nonode@nohost 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,crypto_sup} started: [{pid,<0.52.0>}, {name,crypto_server}, {mfa,{crypto_server,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === application: crypto started_at: nonode@nohost 1> =INFO REPORT==== 3-Nov-2009::19:35:46 === e_lang module: error during loading file: "/home/sunny/codes_in_mercurial/erlang-web/config/languages/en.conf", reason:enoent 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,kernel_safe_sup} started: [{pid,<0.62.0>}, {name,timer_server}, {mfa,{timer,start_link,[]}}, {restart_type,permanent}, {shutdown,1000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_sup} started: [{pid,<0.68.0>}, {name,mnesia_event}, {mfa,{mnesia_sup,start_event,[]}}, {restart_type,permanent}, {shutdown,30000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_kernel_sup} started: [{pid,<0.70.0>}, {name,mnesia_monitor}, {mfa,{mnesia_monitor,start,[]}}, {restart_type,permanent}, {shutdown,3000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_kernel_sup} started: [{pid,<0.71.0>}, {name,mnesia_subscr}, {mfa,{mnesia_subscr,start,[]}}, {restart_type,permanent}, {shutdown,3000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_kernel_sup} started: [{pid,<0.72.0>}, {name,mnesia_locker}, {mfa,{mnesia_locker,start,[]}}, {restart_type,permanent}, {shutdown,3000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_kernel_sup} started: [{pid,<0.73.0>}, {name,mnesia_recover}, {mfa,{mnesia_recover,start,[]}}, {restart_type,permanent}, {shutdown,180000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_kernel_sup} started: [{pid,<0.74.0>}, {name,mnesia_tm}, {mfa,{mnesia_tm,start,[]}}, {restart_type,permanent}, {shutdown,30000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_kernel_sup} started: [{pid,<0.75.0>}, {name,mnesia_checkpoint_sup}, {mfa,{mnesia_checkpoint_sup,start,[]}}, {restart_type,permanent}, {shutdown,infinity}, {child_type,supervisor}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_kernel_sup} started: [{pid,<0.76.0>}, {name,mnesia_snmp_sup}, {mfa,{mnesia_snmp_sup,start,[]}}, {restart_type,permanent}, {shutdown,infinity}, {child_type,supervisor}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_kernel_sup} started: [{pid,<0.77.0>}, {name,mnesia_controller}, {mfa,{mnesia_controller,start,[]}}, {restart_type,permanent}, {shutdown,3000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_kernel_sup} started: [{pid,<0.78.0>}, {name,mnesia_late_loader}, {mfa,{mnesia_late_loader,start,[]}}, {restart_type,permanent}, {shutdown,3000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,mnesia_sup} started: [{pid,<0.69.0>}, {name,mnesia_kernel_sup}, {mfa,{mnesia_kernel_sup,start,[]}}, {restart_type,permanent}, {shutdown,infinity}, {child_type,supervisor}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === application: mnesia started_at: nonode@nohost 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,eptic} started: [{pid,<0.81.0>}, {name,e_hook}, {mfa,{e_hook,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,eptic} started: [{pid,<0.82.0>}, {name,e_dict}, {mfa,{e_dict,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,eptic} started: [{pid,<0.83.0>}, {name,e_session}, {mfa,{e_session,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,eptic} started: [{pid,<0.84.0>}, {name,e_component}, {mfa,{e_component,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,eptic} started: [{pid,<0.85.0>}, {name,e_logger}, {mfa,{e_logger,start_link,[]}}, {restart_type,permanent}, {shutdown,2000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === application: eptic started_at: nonode@nohost 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === application: wpart started_at: nonode@nohost 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === application: wparts started_at: nonode@nohost 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,yaws_sup} started: [{pid,<0.97.0>}, {name,yaws_log}, {mfa,{yaws_log,start_link,[]}}, {restart_type,permanent}, {shutdown,5000}, {child_type,worker}] 1> =INFO REPORT==== 3-Nov-2009::19:35:46 === Yaws: Using config file /home/sunny/codes_in_mercurial/erlang-web/config/yaws.conf 1> =INFO REPORT==== 3-Nov-2009::19:35:46 === Ctlfile : /home/sunny/.yaws/yaws/erlangweb_test/CTL 1> =INFO REPORT==== 3-Nov-2009::19:35:46 === Yaws: Listening to 0.0.0.0:8000 for <1> virtual servers: - http://localhost:8000 under /home/sunny/codes_in_mercurial/erlang-web/docroot 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,yaws_sup} started: [{pid,<0.98.0>}, {name,yaws_server}, {mfa, {yaws_server,start_link, [{env,false,false,false, {file, "/home/sunny/codes_in_mercurial/erlang-web/config/yaws.conf"}, false,false,"default"}]}}, {restart_type,permanent}, {shutdown,5000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,yaws_sup_restarts} started: [{pid,<0.108.0>}, {name,yaws_session_server}, {mfa,{yaws_session_server,start_link,[]}}, {restart_type,permanent}, {shutdown,5000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,yaws_sup_restarts} started: [{pid,<0.110.0>}, {name,yaws_rss}, {mfa,{yaws_rss,start_link,[]}}, {restart_type,permanent}, {shutdown,5000}, {child_type,worker}] 1> =PROGRESS REPORT==== 3-Nov-2009::19:35:46 === supervisor: {local,yaws_sup_restarts} started: [{pid,<0.111.0>}, {name,yaws_event_manager}, {mfa, {gen_event,start_link, [{local,yaws_event_manager}]}}, {restart_type,permanent}, {shutdown,5000}, {child_type,worker}] 1> =SUPERVISOR REPORT==== 3-Nov-2009::19:35:46 === Supervisor: {local,yaws_sup_restarts} Context: start_error Reason: {'EXIT',{error,could_not_load_driver}} Offender: [{pid,undefined}, {name,yaws_sendfile}, {mfa,{yaws_sendfile_compat,start_link,[]}}, {restart_type,permanent}, {shutdown,5000}, {child_type,worker}] 1> =SUPERVISOR REPORT==== 3-Nov-2009::19:35:46 === Supervisor: {local,yaws_sup} Context: start_error Reason: shutdown Offender: [{pid,undefined}, {name,yaws_sup_restarts}, {mfa,{yaws_sup_restarts,start_link,[]}}, {restart_type,transient}, {shutdown,infinity}, {child_type,supervisor}] 1> =CRASH REPORT==== 3-Nov-2009::19:35:46 === crasher: pid: <0.94.0> registered_name: [] exception exit: {shutdown,{yaws_app,start,[normal,[]]}} in function application_master:init/4 initial call: application_master:init/4 ancestors: [<0.93.0>] messages: [{'EXIT',<0.95.0>,normal}] links: [<0.93.0>,<0.5.0>] dictionary: [] trap_exit: true status: running heap_size: 233 stack_size: 23 reductions: 101 neighbours: 1> =INFO REPORT==== 3-Nov-2009::19:35:46 === application: yaws exited: {shutdown,{yaws_app,start,[normal,[]]}} type: temporary 1> |
|
From: Magnus H. <ma...@er...> - 2009-11-02 14:21:38
|
-- Magnus Henoch, ma...@er... Erlang Training and Consulting http://www.erlang-consulting.com/ |
|
From: Michal Z. <zaj...@gm...> - 2009-11-01 18:38:35
|
Hi instead of <script .. /> use <script> </script> (important: some char between i.e. white space) It is some sort of bug (or behavior;)) of xmerl. it was that? Also, if source of scripts is external, you do not need new rules in the dispacher. 2009/11/1 Suhail Ahmed <suh...@gm...> > Hi, > > I am really new to earlang web, started using it today as a matter of fact. > I have been using beepbeep but the lack of i18n caused me to look further > afield for something I needed and erlang web fits the bill. However, in > moving to erlang web I seem to have hit a snag. I have found that the > inclusion of jquery causes my page not to display, at least in Firefox and > Lynx though it does display in Safari albeit without Jquery working > properly.I have pared down my code to the barest minimum which I have below: > > > <?xml version="1.0" encoding="utf-8"?> > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" > "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> > <html xmlns="http://www.w3.org/1999/xhtml"> > > <head> > <title>moimoi</title> > <meta http-equiv="Content-Type" content="text/html; > charset=UTF-8"/> > <script type="text/javascript" src=" > http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"/> > <script type="text/javascript" src=" > http://www.methvin.com/jquery/jq-corner.js"/> > > </head> > <body> > <p>hello</p> > </body> > </html> > > > If I remove the jquery scripts, the paragraph will display. Is there > something I need to be aware of when using jquery and erlang web? I tried > the very same code in beepbeep and other frameworks and it works fine. I did > modify the default dispatcher and it looks like this now: > > {static,"^/jquery-1.3.2.min.js$",enoent}. > {static,"^/jquery.corner.js$",enoent}. > > and have the script files in the docroot folder. > > > Any help in getting me on the road with jquery will be deeply appreciated. > Looking forward to hearing from you soon. > > Cheers > Suhail > > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry(R) Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9 - 12, 2009. Register now! > http://p.sf.net/sfu/devconference > _______________________________________________ > Erlangweb-users mailing list > Erl...@li... > https://lists.sourceforge.net/lists/listinfo/erlangweb-users > http://www.erlang-web.org/ > |
|
From: Suhail A. <suh...@gm...> - 2009-11-01 00:46:08
|
Hi,
I am really new to earlang web, started using it today as a matter of fact.
I have been using beepbeep but the lack of i18n caused me to look further
afield for something I needed and erlang web fits the bill. However, in
moving to erlang web I seem to have hit a snag. I have found that the
inclusion of jquery causes my page not to display, at least in Firefox and
Lynx though it does display in Safari albeit without Jquery working
properly.I have pared down my code to the barest minimum which I have below:
moimoi
moimoi
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>moimoi</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<script type="text/javascript" src="
http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"/>
<script type="text/javascript" src="
http://www.methvin.com/jquery/jq-corner.js"/>
</head>
<body>
<p>hello</p>
</body>
</html>
If I remove the jquery scripts, the paragraph will display. Is there
something I need to be aware of when using jquery and erlang web? I tried
the very same code in beepbeep and other frameworks and it works fine. I did
modify the default dispatcher and it looks like this now:
{static,"^/jquery-1.3.2.min.js$",enoent}.
{static,"^/jquery.corner.js$",enoent}.
and have the script files in the docroot folder.
Any help in getting me on the road with jquery will be deeply appreciated.
Looking forward to hearing from you soon.
Cheers
Suhail
|
|
From: Michal P. <mic...@er...> - 2009-10-28 11:11:18
|
Hello everyone, We are happy to announce the next official release of the Erlang Web framework. The latest 1.4 version is full of new features and enhancements. Let me introduce at least some of them: * integration with EWGI EWGI (pronounced you-ghee) is a specification designed to allow web applications written in Erlang to run on any supported server. It also makes developing web applications simpler and more flexible by providing a common mechanism for reusing components. It was inspired by Python's PEP 333 and provides similar functionality to other projects such as Ruby's Rack. For more information about EWGI, visit http://bit.ly/1kMSeT * new template language support: ErlyDTL ErlyDTL is an Erlang implementation of the Django Template Language. The new template language should become an interesting alternative to the existing XHTML and Xmerl based template engine. ErlyDTL project homepage: http://code.google.com/p/erlydtl/ * Erlang Web Test Suite application bundled EWTS (which stands for Erlang Web Test Suite) is a new and innovative approach to system testing. Combination of unit tests and Erlang powerful dbg tool provides developers easy to use and extend testing environment for their applications. For more details, visit: http://wiki.erlang-web.org/EWTS * multiple level request dictionary support Request dictionary can store nested data structures. Apart from the above, there are also some changes worth mentioning: * new wpart introduced: wpart:comment * embedding default values in wparts from templates (patch submitted by Elena Bobrova - thank you!) * top-down template inclusion feature * experimental ejabberd-flavoured e_hook introduced * upgraded to Yaws 1.85 We do encourage everyone to try Erlang Web 1.4 out, send us comments, contribute and enjoy the coding! Erlang Web 1.4 can be easily downloaded as a tarball from its official website: http://www.erlang-web.org The latest version can be also checked out from the bitbucket repository: http://bitbucket.org/etc/erlang-web/ The documentation can be found on Erlang Web's wiki page: http://wiki.erlang-web.org Best regards, -- Michal Ptaszek www.erlang-consulting.com |
|
From: Michal S. <mi...@er...> - 2009-10-15 08:45:21
|
Hi, On 13 Oct 2009, at 05:29, Fred Janon wrote: > I would like to do a proof of concept project with Erlang Web, but I > need Postgres. Is it possible to use Postgres from Erlang web? Erlang Web supports Mnesia and CouchDB databases at the moment (both being Erlang based), however there is already a layer of abstraction that allows implementing interfaces of other databases as well. The way it works is that all queries to the database should go through the e_db.erl API. Then the database callback module is called. The callback module can be configured in the project.conf file and can be read using e_conf:dbms(). You can read more here http://wiki.erlang-web.org/DBMS Using Postgres from Erlang Web would require developing a simple e_db_postgres.erl call back module, from which you would call one of the existing Postgres drivers for Erlang (see the other email in this thread). If you would need some help with developing such callback module, let us know. Michal -- Michal Slaski http://www.erlang-consulting.com |
|
From: Michal S. <mi...@er...> - 2009-10-15 08:25:07
|
Hi Fred, The installation scripts were developed using the so-called escript and AFAIK it is possible to run escripts on Windows, however this requires modification of the first line of the escript [1]. In general I don't see the reason why Erlang Web would not work on Windows, but we never tested the installation scripts on this platform. If you will try out the escripts, please let us know how it went, so that we can update the wiki pages or help you resolve any issues you may have. Michal [1] http://forums.pragprog.com/forums/27/topics/1636 -- Michal Slaski http://www.erlang-consulting.com On 13 Oct 2009, at 05:53, Fred Janon wrote: > Unfortunately, my PC runs Windows and it's really not convenient for > me to run Linux at the moment, I was wondering if anyone has written > an install script for Erlang Web for Windows. > > Thanks > > Fred |
|
From: Ngoc D. <ngo...@gm...> - 2009-10-13 04:11:21
|
epgsql is a very good PostgreSQL driver for Erlang: http://bitbucket.org/will/epgsql/overview/ On Tue, Oct 13, 2009 at 12:29 PM, Fred Janon <fj...@gm...> wrote: > Hi, > > I would like to do a proof of concept project with Erlang Web, but I need > Postgres. Is it possible to use Postgres from Erlang web? > > Thanks > > Fred > > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry(R) Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart your > developing skills, take BlackBerry mobile applications to market and stay > ahead of the curve. Join us from November 9 - 12, 2009. Register now! > http://p.sf.net/sfu/devconference > _______________________________________________ > Erlangweb-users mailing list > Erl...@li... > https://lists.sourceforge.net/lists/listinfo/erlangweb-users > http://www.erlang-web.org/ > |
|
From: Fred J. <fj...@gm...> - 2009-10-13 03:54:08
|
Unfortunately, my PC runs Windows and it's really not convenient for me to run Linux at the moment, I was wondering if anyone has written an install script for Erlang Web for Windows. Thanks Fred |
|
From: Fred J. <fj...@gm...> - 2009-10-13 03:29:55
|
Hi, I would like to do a proof of concept project with Erlang Web, but I need Postgres. Is it possible to use Postgres from Erlang web? Thanks Fred |
|
From: Jérôme D. <je...@de...> - 2009-10-06 08:37:43
|
Thanks, I'll try '*', I have already tried the real IP adress, but with no success. J. Michal Ptaszek a écrit : > Hello, > > ----- "Jérôme Desquilbet" <je...@de...> wrote: > >> Hello, >> I am struggling with a problem, a very basic one I suppose, but I >> can't >> solve it. >> I follow the steps from >> http://wiki.erlang-web.org/Tutorial/Step1_Setup >> but >> ./bin/start_interactive >> fails with: >> >> =ERROR REPORT==== 5-Oct-2009::16:00:16 === >> Failed to start service: >> "/home/jerome/kanfihi/erlangweb-1.4rc1/config/inets_https.conf" >> due to: "httpd_conf: 0.0.0.0 is an invalid address" >> >> Any idea? > > The problems refers to the inets starting procedure: it does not > recognize the 0.0.0.0 address. > > I would try to provide a 'normal' hostname/ip, such as > - localhost/127.0.0.1 > - your IP address (ifconfig is helpful) > - if both of them fail, try a wildcard: '*' (it is by default so > you can also remove BindAddress section from the configuration file) > > The file you should change is config/inets.conf > > >> Thanks a lot, >> Jérôme. >> > > Best regards, |
|
From: Michal P. <mic...@er...> - 2009-10-06 07:14:02
|
Hello, ----- "Jérôme Desquilbet" <je...@de...> wrote: > Hello, > I am struggling with a problem, a very basic one I suppose, but I > can't > solve it. > I follow the steps from > http://wiki.erlang-web.org/Tutorial/Step1_Setup > but > ./bin/start_interactive > fails with: > > =ERROR REPORT==== 5-Oct-2009::16:00:16 === > Failed to start service: > "/home/jerome/kanfihi/erlangweb-1.4rc1/config/inets_https.conf" > due to: "httpd_conf: 0.0.0.0 is an invalid address" > > Any idea? The problems refers to the inets starting procedure: it does not recognize the 0.0.0.0 address. I would try to provide a 'normal' hostname/ip, such as - localhost/127.0.0.1 - your IP address (ifconfig is helpful) - if both of them fail, try a wildcard: '*' (it is by default so you can also remove BindAddress section from the configuration file) The file you should change is config/inets.conf > Thanks a lot, > Jérôme. > Best regards, -- Michal Ptaszek www.erlang-consulting.com |
|
From: Jérôme D. <je...@de...> - 2009-10-05 15:15:31
|
Hello, I am struggling with a problem, a very basic one I suppose, but I can't solve it. I follow the steps from http://wiki.erlang-web.org/Tutorial/Step1_Setup but ./bin/start_interactive fails with: =ERROR REPORT==== 5-Oct-2009::16:00:16 === Failed to start service: "/home/jerome/kanfihi/erlangweb-1.4rc1/config/inets_https.conf" due to: "httpd_conf: 0.0.0.0 is an invalid address" Any idea? Thanks a lot, Jérôme. |
|
From: Michal Z. <mic...@er...> - 2009-09-08 20:38:01
|
Hi,
You are trying to match /cardfile.gif against /images/*.gif pattern.
So, either change dispatcher rule into {static, "^/.*\.gif$", enoent} and place pictures in main docroot directory, or change path to the image to src=/images/cardfile.gif .
Of course, there are many ways of rewriting *.gif path to /images/something path, but I guess you didnt mean that.
br
----- Bill Ott <bi...@th...> wrote:
> Hi. I have found another peculiar situation. I added a banner that
> includes a source image to the show_all.html. Here is the file
>
> <html>
> <head>
> <title>Erlang Web Shop - All Items</title>
> <link rel="stylesheet" type="text/css" href="/style.css" />
> </head>
> <body>
> <div id="banner">
> Copyright ©2000 W.B.OTT. All rights reserved. Send mail to <a
> href="mailto:bi...@th...">bi...@th...</a><br></br>
> <img src="/cardfile.gif" ALIGN="Bottom" alt="The Ott's Web Site" />
> </div>
>
> <h1>All items that are stored in the shop:</h1>
>
> <ul>
> <wpart:list select="map" list="items" as="item">
> <li>
> <wpart:choose>
> <wpart:when test="not {item:available}">
> NOT AVAILABLE
> </wpart:when>
> </wpart:choose>
> <a wpart:href="/item/show/{[integer]item:id}"><wpart:lookup
> key="item:name" /></a>
> </li>
> </wpart:list>
> </ul>
> </body>
> </html>
>
> I also added a rule to the dispatch.conf. and placed the cardfile.gif in
> .../docroot/images/. I moved the lines around in dispatch.conf because
> I thought that maybe the static had to go first, but made no difference.
> Here is the dispatch code.
>
> %%
> %% ENTRIES FOR THE AUTOCOMPLETE WPART
> %%
> {static,"^/autocomplete.css$",enoent}.
> {static,"^/jquery.autocomplete.js$",enoent}.
> {static,"^/jquery.js$",enoent}.
> {static, "^/images/.*\.gif$", enoent}.
>
> %%
> %% WELCOME PAGE
> %%
> {static,"^/?$","welcome.html"}.
> {static, "^/style\.css$", enoent}.
> %%
> %% SHOP PAGES
> %%
> {dynamic, "^/item/all$", {browser, list_all}}.
> {dynamic, "^/item/show/(?<id>[0-9]+)$", {browser, show_item}}.
>
> {dynamic, delegate, "^/item/admin/", "config/dispatcher/admin.conf"}.
> {dynamic, delegate, "^/user/", "config/dispatcher/user.conf"}.
> {dynamic, "^/item/buy/(?<id>[0-9]+)$", {browser, buy_item}}.
>
>
> %%
> %% LOGIN URLs
> %%
> {static, "^/login", "login/login.html"}.
> {dynamic, "^/do_login", {login, login}}.
> {dynamic, "^/logout", {login, logout}}.
>
> So the style sheet is working. the copyright is very small. The problem
> is the alt "The Ott's web" is shown (very small) instead of showing the
> image. Here is the generated xhtml.
>
> <?xml version="1.0" encoding="utf-8"?>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> <html xmlns="http://www.w3.org/1999/xhtml">
>
> <head>
> <title>Erlang Web Shop - All Items</title>
> <link rel="stylesheet"type="text/css"href="/style.css <view-source:http://localhost:8080/style.css>"/>
> </head>
> <body>
> <div id="banner">
> Copyright ©2000 W.B.OTT. All rights reserved. Send mail to<a href="mailto:bi...@th...">bi...@th...</a><br/>
> <img src="/cardfile.gif <view-source:http://localhost:8080/cardfile.gif>"ALIGN="Bottom"alt="The Ott's Web Site"/>
>
> </div>
>
> <h1>All items that are stored in the shop:</h1>
>
> <ul>
>
> <li>
>
> <a href="/item/show/1 <view-source:http://localhost:8080/item/show/1>">Our first item</a>
> </li>
>
> <li>
>
>
> <a href="/item/show/2 <view-source:http://localhost:8080/item/show/2>">Not out of stock item</a>
> </li>
>
> <li>
>
> <a href="/item/show/3 <view-source:http://localhost:8080/item/show/3>">Num3</a>
> </li>
>
> <li>
>
> <a href="/item/show/7 <view-source:http://localhost:8080/item/show/7>">another</a>
>
> </li>
>
> <li>
>
> <a href="/item/show/6 <view-source:http://localhost:8080/item/show/6>">new part</a>
> </li>
>
> </ul>
> </body>
>
> Any help is appreciated....
> </html>
>
>
>
>
>
> --
> Regards,
> Bill Ott
>
> Email: Mailto://billott@theotts.org
> Website: http://www.theotts.org
>
--
Michal Zajda
Erlang Training and Consulting Ltd
http://www.erlang-consulting.com
|
|
From: Bill O. <bi...@th...> - 2009-09-08 20:02:24
|
Hi. I have found another peculiar situation. I added a banner that
includes a source image to the show_all.html. Here is the file
<html>
<head>
<title>Erlang Web Shop - All Items</title>
<link rel="stylesheet" type="text/css" href="/style.css" />
</head>
<body>
<div id="banner">
Copyright ©2000 W.B.OTT. All rights reserved. Send mail to <a
href="mailto:bi...@th...">bi...@th...</a><br></br>
<img src="/cardfile.gif" ALIGN="Bottom" alt="The Ott's Web Site" />
</div>
<h1>All items that are stored in the shop:</h1>
<ul>
<wpart:list select="map" list="items" as="item">
<li>
<wpart:choose>
<wpart:when test="not {item:available}">
NOT AVAILABLE
</wpart:when>
</wpart:choose>
<a wpart:href="/item/show/{[integer]item:id}"><wpart:lookup
key="item:name" /></a>
</li>
</wpart:list>
</ul>
</body>
</html>
I also added a rule to the dispatch.conf. and placed the cardfile.gif in
.../docroot/images/. I moved the lines around in dispatch.conf because
I thought that maybe the static had to go first, but made no difference.
Here is the dispatch code.
%%
%% ENTRIES FOR THE AUTOCOMPLETE WPART
%%
{static,"^/autocomplete.css$",enoent}.
{static,"^/jquery.autocomplete.js$",enoent}.
{static,"^/jquery.js$",enoent}.
{static, "^/images/.*\.gif$", enoent}.
%%
%% WELCOME PAGE
%%
{static,"^/?$","welcome.html"}.
{static, "^/style\.css$", enoent}.
%%
%% SHOP PAGES
%%
{dynamic, "^/item/all$", {browser, list_all}}.
{dynamic, "^/item/show/(?<id>[0-9]+)$", {browser, show_item}}.
{dynamic, delegate, "^/item/admin/", "config/dispatcher/admin.conf"}.
{dynamic, delegate, "^/user/", "config/dispatcher/user.conf"}.
{dynamic, "^/item/buy/(?<id>[0-9]+)$", {browser, buy_item}}.
%%
%% LOGIN URLs
%%
{static, "^/login", "login/login.html"}.
{dynamic, "^/do_login", {login, login}}.
{dynamic, "^/logout", {login, logout}}.
So the style sheet is working. the copyright is very small. The problem
is the alt "The Ott's web" is shown (very small) instead of showing the
image. Here is the generated xhtml.
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Erlang Web Shop - All Items</title>
<link rel="stylesheet"type="text/css"href="/style.css <view-source:http://localhost:8080/style.css>"/>
</head>
<body>
<div id="banner">
Copyright ©2000 W.B.OTT. All rights reserved. Send mail to<a href="mailto:bi...@th...">bi...@th...</a><br/>
<img src="/cardfile.gif <view-source:http://localhost:8080/cardfile.gif>"ALIGN="Bottom"alt="The Ott's Web Site"/>
</div>
<h1>All items that are stored in the shop:</h1>
<ul>
<li>
<a href="/item/show/1 <view-source:http://localhost:8080/item/show/1>">Our first item</a>
</li>
<li>
<a href="/item/show/2 <view-source:http://localhost:8080/item/show/2>">Not out of stock item</a>
</li>
<li>
<a href="/item/show/3 <view-source:http://localhost:8080/item/show/3>">Num3</a>
</li>
<li>
<a href="/item/show/7 <view-source:http://localhost:8080/item/show/7>">another</a>
</li>
<li>
<a href="/item/show/6 <view-source:http://localhost:8080/item/show/6>">new part</a>
</li>
</ul>
</body>
Any help is appreciated....
</html>
--
Regards,
Bill Ott
Email: Mailto://billott@theotts.org
Website: http://www.theotts.org
|
|
From: Michal P. <mic...@er...> - 2009-09-07 07:13:27
|
Hello Bill,
We are so glad you have decided to play with Erlang Web!
After a quick investigation it turned out that there were
a missing clauses in the main Emakefile of the fourth tutorial
step: they were corrected and the new package has been
uploaded to the wiki: thank you for pointing this out.
Happy hacking!
----- "Bill Ott" <bi...@th...> wrote:
> Hi, I am fairly new to erlang and just looking at erlangweb. I have
> successfully reached step 4, but cannot get the shop_utils.erl to
> compile.
> If I comment out the include and the 2 ?BEFOREs, then it compiles
> without error, which points to the annotation sw. I am running Fedora
>
> 11 x86_64.
>
> when using ./bin/compile or eptic:reload() I get the following: Any
>
> help is greatly appreciated.
>
> Recompile: lib/shop-0.1/src/shop_utils
> lib/shop-0.1/src/shop_utils.erl:none: error in parse transform
> 'e_annotation': {undef,
>
> [{e_annotation,parse_transform,
> [[{attribute,1,file,
>
> {"lib/shop-0.1/src/shop_utils.erl",
> 1}},
>
> {attribute,1,module,shop_utils},
> {attribute,3,export,
> [{validate,4}]},
> {attribute,1,file,
>
> {"./lib/eptic-1.3/include/e_annotation.hrl",
> 1}},
> {attribute,7,file,
>
> {"lib/shop-0.1/src/shop_utils.erl",
> 7}},
> {attribute,8,
>
> ew_annotation_before,[]},
>
> {function,9,validate,4,
> [{clause,9,
> [{tuple,9,
> [{var,9,'Model'},
>
> {var,9,'Type'}]},
> {var,9,'Mod'},
> {var,9,'_Fun'},
> {var,9,'_Args'}],
> [],
> [{'case',10,
> {call,10,
> {remote,10,
>
> {atom,10,validate_tool},
>
> {atom,10,validate_cu}},
>
> [{var,10,'Model'},
>
> {var,10,'Type'}]},
> [{clause,11,
> [{tuple,11,
>
> [{atom,11,ok},
>
> {var,11,'Item'}]}],
> [],
> [{tuple,12,
>
> [{atom,12,proceed},
> {cons,12,
>
> {var,12,'Item'},
>
> {nil,12}}]}]},
> {clause,13,
> [{tuple,13,
>
> [{atom,13,error},
>
> {var,13,'_Reason'}]}],
> [],
> [{tuple,14,
>
> [{atom,14,error},
> {tuple,14,
>
> [{var,14,'Mod'},
> {atom,14,
>
> validate_error},
> {cons,14,
>
> {var,14,'Fun'},
> {nil,
>
> 14}}]}]}]}]}]}]},
> {eof,45}],
>
> [report_errors,report_warnings,
>
> {outdir,"lib/shop-0.1/ebin"},
>
> {i,"lib/shop-0.1/include"},
>
> debug_info,strict_record_tests,
> netload]]},
> {compile,
>
> '-foldl_transform/2-anonymous-2-',
> 2},
>
> {compile,foldl_transform,2},
> {compile,
>
> '-internal_comp/4-anonymous-1-',2},
> {compile,fold_comp,3},
>
> {compile,internal_comp,4},
> {compile,internal,3}]}
> ok
>
> --
> Regards,
> Bill Ott
>
> Email: Mailto://billott@theotts.org
> Website: http://www.theotts.org
>
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008
> 30-Day
> trial. Simplify your report design, integration and deployment - and
> focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Erlangweb-users mailing list
> Erl...@li...
> https://lists.sourceforge.net/lists/listinfo/erlangweb-users
> http://www.erlang-web.org/
Best regards,
--
Michal Ptaszek
www.erlang-consulting.com
|