]load command failed after update to apl14.1

MiServer is Dyalog's APL-based web development framework

]load command failed after update to apl14.1

Postby Gantois on Mon May 30, 2016 10:09 am

Hi,

After update from apl13.2 to apl14.1 version, the command ]load app did not work.
Could someone helpe me?

)load mserver
C:\MiServer\mserver.dws saved Tue Mar 29 12:34:06 2016
Start 'Intro' ⍝ Run the MiServer v2.1 sample site
Start 'Appu'
MiServer for "Appu" started on port: 8088
Load 'Appu'
Development environment loaded
MiSite "C:\MiServer\Appu\" loaded
]load Appu\*

]load c:\MiServer\Appu\*
* Command Execution Failed: DOMAIN ERROR
Gantois
 
Posts: 90
Joined: Thu Apr 17, 2014 9:44 am

Re: ]load command failed after update to apl14.1

Postby MBaas on Mon May 30, 2016 12:21 pm

Can you pls. do
]version
and post the results? Also, pls. do
]udebug on
and do the ]load again and post the details of the error...
User avatar
MBaas
 
Posts: 156
Joined: Thu Oct 16, 2008 1:17 am
Location: Gründau / Germany

Re: ]load command failed after update to apl14.1

Postby woody on Mon May 30, 2016 1:16 pm

Yes. I get the same result, running Dyalog APL 14.1 and the older MiServer 2.x. This is the latest Mserver pulled down from GITHUB which works fine for web serving.

However, here's what I get when I try to run the user command ]load

NOTE: After digging deeper, I see GetUnicodeFile function as the possible culprit:

I traced the program.. and this is the line that throws the domain error... which is TRAPPED.

      :Else ⍝ assume UTF-8 and trap any error
:Trap 0
r←'UTF-8'⎕UCS clean r ⍝ decode using KEY
:Else
⎕DMX.Message ⎕SIGNAL ⎕EN
:EndTrap

.... SNIP ....

Here's the root of the problem.

r←'UTF-8'⎕UCS clean r
DOMAIN ERROR
r←'UTF-8'⎕UCS clean r

⍴r
61798
10↑r
0 0 1 0 12 0 16 16 16 0
ucs2
0 0



Here's the MiServer 2.x error steps:

      )load d:\apl\MiServerV24-APLscriptV2\mserver
d:\apl\MiServerV24-APLscriptV2\mserver.dws saved Sat Apr 16 17:16:48 2016
Start 'APLROOT' ⍝ Run the MiServer v2.1 sample site

Start 'APLROOT'
MiServer for "APLROOT" started on port: 8000

Load 'APLROOT'
Development environment loaded
MiSite "d:\apl\MiServerV24-APLscriptV2\APLROOT\" loaded

)fns
Load MakeSALTns NewSite Restart RuntimeError Start Stop Test
)vars
AppRoot
)obs
APLCORE APLTOOLS APLWORK Base64 Blank Boot DRC Dates DemoServer DrA Files HTML HTMLInput
HTTPRequest JQ JQM JQO JQUI JSON JSON2 MiPage MildPage MildServer Pages PokerGo
SALT SMTPMail SQA SQL Strings ValuePairs XML

]?

ARRAY compare edit tohtml
FILE cd collect compare edit find replace split tolarge toquadts touch
FN align calls compare defs dinput findoutput latest reorderlocals
MISC calendar caption factors pivottable
NS scriptupdate summary xref
OUTPUT box boxing disp display rows
PERFORMANCE monitor profile runtime spaceneeded
SALT clean compare list load open removeversions save settings snap
SVN add checkout commit delete diff export import resolve status update
TOOLS assemblies chart copyreg demo fileassociations fromhex guiprops tohex
TRANSFER in out
UCMD udebug uload umonitor unew urefresh ureset usetup uupdate uversion
WS compare document findrefs fnslike locate map nameslike nms obslike peek sizeof varslike

Type "]?+" for a summary or "]??" for general help or "]?CMD" for info on command CMD.

]?load
Command "salt.Load".

Load [path]scriptfile

Load a class in the workspace

Modifiers:
-target=Namespace Specifies target namespace for load
-disperse[=nam1,nam2] Disperse elements in the target namespace specified
-noname Only return value, do not create name
-nolink Do not "link" loaded class to source file
-protect Do NOT load if the name is already defined
-version= Load specific version
-source[=no] Return the source ("no" means fix but use no source)

Script location: C:\Program Files\Dyalog\Dyalog APL-64 14.1 Unicode\SALT\Spice\SaltInSpice

]load d:\apl\MiServerV24-APLscriptV2\APLROOT\*
* Command Execution Failed: DOMAIN ERROR

]udebug on
Was OFF

]load d:\apl\MiServerV24-APLscriptV2\APLROOT\*
DOMAIN ERROR
splitOnNL[0] splitOnNL←{⍺←⍙KEY ⋄ (13 GetUnicodeFile ⍵ ⍺)splitOn ⎕UCS 10}



name
d:\apl\MiServerV24-APLscriptV2\APLROOT\favicon.ico

cname
favicon

ext
ico

folder
d:\apl\MiServerV24-APLscriptV2\APLROOT


splitOnNL←{⍺←⍙KEY ⋄ (13 GetUnicodeFile ⍵ ⍺) splitOn ⎕ucs 10}

name
d:\apl\MiServerV24-APLscriptV2\APLROOT\favicon.ico

cname
favicon

ext
ico

folder
d:\apl\MiServerV24-APLscriptV2\APLROOT

⍙KEY
0

⍙KEY splitOnNL name
DOMAIN ERROR
splitOnNL[0] splitOnNL←{⍺←⍙KEY ⋄ (13 GetUnicodeFile ⍵ ⍺)splitOn ⎕UCS 10}

≡⍙KEY
0

≡name
1

⍴ (13 GetUnicodeFile name ⍙KEY)
DOMAIN ERROR
⍴(13 GetUnicodeFile name ⍙KEY)


⎕VR 'GetUnicodeFile'
∇ r←{remove}GetUnicodeFile ra;b;clean;file;key;nc;tn;utf8;ucs2;from;to
[1] ⍝ Read a Unicode (UTF-8 or even UCS-2) file
[2] ⍝ This version allows excluding specific 1-byte characters before the translation
[3] ⍝ This prevents TRANSLATION errors in classic interpreters
[4] (file key)←2↑(condEncl ra),0
[5] nc←⍴r←256|⎕NREAD tn 83,2↑⎕NSIZE tn←file ⎕NTIE 0 ⋄ ⎕NUNTIE tn
[6] clean←{⍵}
[7] :If 2=⎕NC'remove'
[8] clean←~∘remove
[9] :EndIf
[10]
[11] utf8←239 187 191≡3↑r ⋄ ucs2←(2 2⍴254 255 255)∧.=2↑r ⍝ 254 255=big endian
[12] ⍝ An updated SALT won't know about this new setting
[13] :If 82=⎕DR''
[14] :AndIf {6 911::1 ⋄ '1'∊⎕SE.SALT.Settings'mapprimitives'}0
[15] b←∨/ucs2 ⋄ from←Special ucs2 ⋄ to←(Uxxxx ucs2),¨⊂ucs2[1]⌽32,b/0
[16] nc←⍴r←r numReplace from to
[17] :EndIf
[18] :If utf8 ⍝ UTF-8 header
[19] r←'UTF-8'⎕UCS clean 3↓r
[20] :ElseIf ∨/ucs2
[21] r←⎕UCS clean 1↓(256*ucs2)+.×⍨(2,⍨nc÷2)⍴r
[22] :Else ⍝ assume UTF-8 and trap any error
[23] :Trap 0
[24] r←'UTF-8'⎕UCS clean r ⍝ decode using KEY
[25] :Else
[26] ⎕DMX.Message ⎕SIGNAL ⎕EN
[27] :EndTrap
[28] :EndIf


Here's the SI STACK

[img]
loadbug.JPG
[/img]
Attachments
loadbug.JPG
Last edited by woody on Tue May 31, 2016 2:08 pm, edited 3 times in total.
Woodley Butler
Automatonics, Inc.
"Find your head in the APL Cloud"
http://www.APLcloud.com
User avatar
woody
 
Posts: 144
Joined: Tue Dec 28, 2010 12:54 am
Location: Atlanta, Georgia USA

Re: ]load command failed after update to apl14.1

Postby Gantois on Mon May 30, 2016 1:37 pm

Thanks Woodley and Mike,

This is exactly the same problem.

Marco
Gantois
 
Posts: 90
Joined: Thu Apr 17, 2014 9:44 am

Re: ]load command failed after update to apl14.1

Postby MBaas on Mon May 30, 2016 2:15 pm

Before digging into that, can you pls. try
]uupdate
to make sure the UCMDs are up-to-date?
User avatar
MBaas
 
Posts: 156
Joined: Thu Oct 16, 2008 1:17 am
Location: Gründau / Germany

Re: ]load command failed after update to apl14.1

Postby MBaas on Mon May 30, 2016 3:26 pm

Oh, BTW: pls. be sure to do
]uupdate
in a )CLEAR ws - I may produce errors when executed while MiServer is running...
User avatar
MBaas
 
Posts: 156
Joined: Thu Oct 16, 2008 1:17 am
Location: Gründau / Germany

Re: ]load command failed after update to apl14.1

Postby Gantois on Mon May 30, 2016 4:23 pm

Mike,

UCMDs are not up-to-date, as following:

Dyalog APL/W-64 Version 14.1.27360
Serial No : 002607
Unicode Edition
Mon May 30 13:18:34 2016
clear ws
]uupdate

You requested an update to the files of the tools SALT and UCMD

There are different sets of files to be updated for each tool.

Your User Commands (UCMD) version is 2.01
It is lower than the one the server (2.1)
and 35 files can be updated.

Your SALT version is 2.42
It is lower than the one the server (2.6)
and 15 files can be updated.

*** No access to SALT folder
* Update cannot be performed

Att, Marco
Gantois
 
Posts: 90
Joined: Thu Apr 17, 2014 9:44 am

Re: ]load command failed after update to apl14.1

Postby MBaas on Mon May 30, 2016 5:16 pm

Perhaps you need to right-click Dyalog and "Run as Administrator"...
User avatar
MBaas
 
Posts: 156
Joined: Thu Oct 16, 2008 1:17 am
Location: Gründau / Germany

Re: ]load command failed after update to apl14.1

Postby Gantois on Mon May 30, 2016 6:01 pm

Hi Mike,

I tried as administrator, but did not run.

Thanks
Gantois
 
Posts: 90
Joined: Thu Apr 17, 2014 9:44 am

Re: ]load command failed after update to apl14.1

Postby Gantois on Mon May 30, 2016 7:18 pm

Hi Mike,

SALT is only for edit? If so, why I receive error when I try to run my index.dyalog after start de application? Perhaps my apl14.1 version has not all necessary fixes. Do you know how could I know this? (my current APL is: Dyalog APL/W-64 Version 14.1.27360 )

example:

)load mserver
C:\MiServer\mserver.dws saved Tue Mar 29 12:34:06 2016
Start 'Intro' ⍝ Run the MiServer v2.1 sample site

Start 'Appu'
MiServer for "Appu" started on port: 8088

Load 'Appu'
Development environment loaded
MiSite "C:\MiServer\Appu\" loaded

after http://localhost:8088/index.dyalog

2:VALUE ERROR: No result was provided when the context expected one
HandleMSP[74] REQ.Return I85'inst.',fn,' REQ' ⍝ ... whereas "new" MiPages return the HTML they generate

Cheers,
Marco
Gantois
 
Posts: 90
Joined: Thu Apr 17, 2014 9:44 am

Next

Return to MiServer

Who is online

Users browsing this forum: No registered users and 1 guest