|
Document revision: 2023-11-29
Refers to WEBDLG2 version: B0830-2211 patch PE83-2311270
Table of contents
We are pleased to welcome you to Eloquence WEBDLG2, the new web browser
interface for Eloquence DLG providing complete
JDLG object and attribute
compatibility.
WEBDLG2 allows to use Eloquence DLG applications from any computer or
mobile device, no additional software installation required.
We appreciate and hope for your feedback. Please send your feedback to the
support@marxmeier.com address.
Thank you very much.
Enjoy!
The Eloquence Team
Overview
WEBDLG2 offers the following improvements over its predecessor, WEBDLG v1:
- WEBDLG2 provides complete
JDLG 2.0 object and attribute
compatibility.
- WEBDLG2 uses the WebSocket technology to implement a fast
bidirectional low latency communication. WEBDLG2 provides the lowest
possible application response times even under wide area network
conditions.
- Dialogs are fully dynamic, the HTML document is updated in place and
never reloaded. Applications can update the user interface at any time
so that, for example, DLG DRAW now works as expected.
- WEBDLG2 uses a single server process, the
eloqwebd2 server. The WEBDLG v1
mod_eloq Apache httpd web server module is no longer used,
which removes the related complexities and performance bottlenecks.
- The eloqwebd2 server provides an
internal web server to serve static
documents, typically eliminating the need to configure and run a
separate web server, e.g., Apache httpd.
- WEBDLG2 supports application
development and debugging using the interactive eloq/eloqcore
or the Eloquence IDE.
Planned WEBDLG2 functionality (not available yet):
- WEBDLG2 will provide new DLG features to allow applications to support
different screen sizes. For example, Dialogs may be configured to
show reduced content if an application is run on a mobile device.
- The attributes below are currently not functional, they are implemented
but don't have any effect (DLG SET may be ignored,
DLG GET may return zero or an empty string).
- Common attributes
-
clipboardcontextmenu, hmax, hmin, wmax, wmin
- Application
-
clipboardcontextmenu, referencepoint, referencex, referencey, scalefactor
- Dialog
-
enablereference, enablescalefactor, minheight,
minwidth, setreference, setscalefactor, yield
- EditText
-
linewrap=hard, maxlines
- Splitter
-
dividersize
- System
-
clipboard, editmode
- TabBox
-
scrollable, tabplacement (other than "top")
Web browser compatibility
On the web browser, WEBDLG2 makes extensive use of contemporary JavaScript
and CSS functionality. It is compatible with any recent web browser,
including Microsoft Internet Explorer 11.
Web browser | Min. version |
Chrome | 57 |
Edge | 18 |
Firefox | 60 |
IE | 11 |
Opera | 44 |
Safari | 11 (macOS 10.11 El Capitan) |
Safari iOS/iPadOS | 13 (iOS/iPadOS 13) |
Getting started
These are the minimum steps required to get started with WEBDLG2
and the provided demo program:
- Configure the eloqwebd2 service name(s)
or port number(s) to listen for
HTTP and/or
HTTPS requests.
- HP-UX, Linux: Configure the eloqwebd2
UID system account and
GID system group.
- Start the eloqwebd2.
- Install and run the demo program.
- Additional configuration may be neccessary
if an external web server is used.
Recent changes
Patch PE83-2311270
(download directory)
WEBDLG2 version: 2.0.16
New functionality (patch PE83-2310240):
New functionality (patch PE83-2311220):
- Released the Plugin API version 2.
Fixed problems:
- Fixed potential 'BUG: onEvent pending click' JavaScript
client error.
- Windows: Fixed internal deadlock potentially triggered when closing
a connection. This could cause the eloqwebd2 process to stop serving
requests and to hang when stopped.
[BETA] Patch PE83-2311220 (superseded)
WEBDLG2 version: 2.0.16
New functionality:
- Released the Plugin API version 2. This adds support for synchronized
DLG SET attributes and for the binary attribute data type.
Fixed problems:
- ComboBox, PopText: Open upwards if otherwise the item list would
overflow the bottom Dialog edge.
- Menu: Open right-to-left if otherwise the menu would overflow
the right Dialog edge.
- MenuBar, StatusBar, ToolBar: Fixed various functional and visual
problems related to insufficient Dialog width.
- eloqwebd2.app:: Configured [default] item values
could not be reset by configuring an empty item value in an
[app_id] section.
[BETA] Patch PE83-2311100 (superseded)
WEBDLG2 version: 2.0.15
Fixed problems:
- Windows: Fixed a regression introduced with previous patch PE83-2310020
which could cause unexpected connection problems.
[BETA] Patch PE83-2310240 (superseded)
WEBDLG2 version: 2.0.15
New functionality:
Fixed problems:
- Fixed unexpected Dialog window size when title length exceeds
the available space.
- Fixed various Plugin API issues introduced with previous withdrawn
patch PE83-2310180.
[BETA] Patch PE83-2310180 (superseded)
Intermediate patch, do not use.
Patch PE83-2310020 (superseded)
WEBDLG2 version: 2.0.14
New functionality:
Fixed problems:
- Fixed a problem where the eloqwebd2 listener could block when the web
browser opens a speculative pre-connection. As a result, new HTTP or HTTPS
requests could hang until a browser pre-connection times out.
- Fixed a problem where the eloqwebd2 listener could refuse to accept new
connections, indicating that the maximum number of clients or sessions are
already active. This was caused by a potential overflow of the clients/sessions
counters.
- Fixed the JavaScript client error message issued when a new browser tab
or window could not be opened.
Patch PE83-2309200 (superseded)
WEBDLG2 version: 2.0.13
New functionality:
Fixed problems:
- Splitter: Fixed wrong pane size when the orientation is modified
while the Splitter is already displayed.
- HtmlView: Fixed <body> attributes of HTML content unexpectedly
ignored. If HTML content is set including a <body> element, the
<body> attributes are now copied to the HtmlView <body> element.
Patch PE83-2307040 (superseded)
WEBDLG2 version: 2.0.13
Fixed problems:
Patch PE83-2306190 (superseded)
WEBDLG2 version: 2.0.13
Fixed problems:
- EditText: Fixed a regression introduced with previous patch PE83-2306130.
DLG GET EditText.line[] unexpectedly issued DLG status
660 on valid empty lines.
Patch PE83-2306130 (superseded)
WEBDLG2 version: 2.0.13
Fixed problems:
- EditText: Fixed wrong DLG GET behavior of line[] and
vheight attributes.
DLG GET EditText.line[] did not issue DLG status 660 if the
specified line does not exist.
The returned DLG GET EditText.vheight value could be
off-by-one if the last line is empty.
[BETA] Patch PE83-2306060 (superseded)
WEBDLG2 version: 2.0.13
Fixed problems:
- Fixed potential race condition which could cause 'App.dlg_DO BUG:
whenReady pending' JavaScript client error.
The fix in previous patch PE83-2305240 was incomplete.
[BETA] Patch PE83-2305240 (superseded)
WEBDLG2 version: 2.0.13
Fixed problems:
- Fixed potential race condition which could cause 'App.dlg_DO BUG:
whenReady pending' JavaScript client error.
Patch PE83-2305170 (superseded)
WEBDLG2 version: 2.0.13
- New attribute: Application.sid : integer, get
Returns the identifier of the invoking WEBDLG2 session.
- ListBox, PopText: Fixed internal inconsistency after a ListBox or
PopText is cleared and new lines/items are added. A subsequent
DLG GET .content could then cause an abort of the
eloqwebd2 process with a log message like below:
Assertion failed: bp - val->v.s.p == *content_l_p + nl_cnt
server panic: Aborting on internal failure, file c_listbox.c, line 3710
- MenuBar: Fixed unexpected height when Dialog is user-resized, as
observed with Firefox browser.
- Fixed 'this.currDlg is null' JavaScript client error, internally
caused by wrong Dialog.timerrule submission while the Dialog is inactive.
- Fixed various problems related to
CloseTimeout and/or
DlgQuitStatus and/or
DlgQuitRule.
If the application is not waiting in DLG DO or
POPUP BOX at the moment when the page is unloading,
DlgQuitStatus or
DlgQuitRule would
not be issued afterwards. Also,
CloseTimeout was unexpectedly
reset to DlgIdleTimeout
if the application continues to issue DLG requests.
- Fixed unexpected failure while creating HTTPS listen socket if both
TLSCertChainFile and
TLSCertKeyFile are configured,
as observed with OpenSSL version 3.0.5. A message like below was logged:
tls_ctx_set_private_key:1270: SSL_CTX_use_PrivateKey_file error:0A080009
Unable to create HTTPS listen socket: TLS is not configured
Patch PE83-2304060 (superseded)
WEBDLG2 version: 2.0.12
Fixed problems:
- Fixed internal ListBox inconsistency caused by failed ListBoxHeader
creation. For example, after a ListBoxHeader cannot be created due to
DLG status 655 (duplicate object name), the internal number of columns
could become inconsistent.
This could cause a subsequent abort of the eloqwebd2 process with
a log message like below:
Assertion failed: mi == d->n_col
server panic: Aborting on internal failure, file c_listbox.c, line 752
Patch PE83-2303290 (superseded)
WEBDLG2 version: 2.0.12
New functionality:
- eloqwebd2.app:: The
DlgQuitStatus
configuration has been added, allowing an application to gracefully quit
before it terminates due to inactivity or after the web browser window
or tab has been closed.
[BETA] Patch PE83-2303280 (superseded)
WEBDLG2 version: 2.0.12
New functionality:
- eloqwebd2.app:: Setting the
WarnLeavingPage
configuration to 2 always enables the user warning before leaving the
page while an application is active, regardless whether or not the
current Dialog has the close symbol, and during
application development and
debugging.
Fixed problems:
- Fixed unexpected DLG protocol failure when invoking
DLG SET "Dialog.do",1 on a Dialog where Dialog.do
is already active, causing the related session to abort.
Patch PE83-2303220 (superseded)
WEBDLG2 version: 2.0.11
Fixed problems:
[BETA] Patch PE83-2303130 (superseded)
WEBDLG2 version: 2.0.10
Fixed problems:
- ListBoxHeader: Fixed unexpected DLG status 660 when getting line
referring to previously set ListBox vactiveline.
Patch PE83-2303070 (superseded)
WEBDLG2 version: 2.0.10
Fixed problems:
- Fixed DLG listener
not accepting non-localhost connections.
- Windows: Fixed unexpected issues when shutting down the 64-bit eloqwebd64
process after using DLG listener.
Possible eloqwebd64 log messages:
N0: net_shutdown_listen: getsockname failed [10038]…
N0: net_shutdown_listen: unable to close socket [10038]…
Possible eloqwebd64 panic:
Assertion failed: *wait_ob_p != NULL
server panic: Aborting on internal failure, file srv.c, line 2225
[BETA] Patch PE83-2303060 (superseded)
WEBDLG2 version: 2.0.10
Fixed problems:
[BETA] Patch PE83-2302210 (superseded)
WEBDLG2 version: 2.0.9
Fixed problems:
- Fixed a race condition where keystrokes stored in the type-ahead buffer
could unexpectedly trigger a rule submission on
DLG SET "Dialog.do",1.
eloqwebd2 log message:
BUG: invalid response call 6, expected: 10
User error message:
Unexpected protocol failure, application closed.
[BETA] Patch PE83-2302200 (superseded)
WEBDLG2 version: 2.0.8
Fixed problems:
- ListBox, ListBoxHeader: Fixed a regression introduced with previous patch
PE83-2302160 which could cause the eloqwebd2 process to unexpectedly abort
with a segmentation fault after DLG SET referring to
vactiveline.
Patch PE83-2302160 (superseded)
WEBDLG2 version: 2.0.8
Fixed problems:
Patch PE83-2302080 (superseded)
WEBDLG2 version: 2.0.7
Fixed problems:
- Dialog: Fixed setting title and/or logoicon while the Dialog is visible
had no visual effect.
Patch PE83-2301270 (superseded)
WEBDLG2 version: 2.0.7
Fixed problems:
[BETA] Patch PE83-2301200 (superseded)
WEBDLG2 version: 2.0.6
New functionality:
- eloqwebd2.app: The
WindowFeatures.NAME
configuration has been added.
It allows to configure how new web browser windows/tabs are opened.
For example, help URLs and/or webprint PDFs
may be configured to open in separate browser windows.
- eloqwebd2.app: The
WarnLeavingPage
configuration has been added, allowing to enable/disable to warn the user
before leaving the page.
In addition, the warning is now disabled during
application development and
debugging, i.e., when a
DLG listener is used to start
an application.
Fixed problems:
[BETA] Patch PE83-2301190 (superseded)
WEBDLG2 version: 2.0.5
New functionality:
- To prevent unintentional program termination, the user is now warned
before leaving the page (e.g. when trying to close the web browser window
or tab).
The warning is issued if the user tries to leave the page while the program
is not interactive, i.e., currently outside DLG DO, or when
the current Dialog's rule attribute value is zero (i.e., the current Dialog
does not display the close symbol in its title bar).
Fixed problems:
Patch PE83-2301120 (superseded)
WEBDLG2 version: 2.0.4
Fixed problems:
- TabBox: Fixed a problem where selectedtab contents were not
displayed as expected. This could happen if a TabBox has not been sensitive
and then TabBox.sensitive=1 is set and TabBox.selectedtab
is modified.
[BETA] Patch PE83-2301020 (superseded)
WEBDLG2 version: 2.0.3
Fixed problems:
[BETA] Patch PE83-2212210 (superseded)
WEBDLG2 version: 2.0.3
New functionality:
Fixed problems:
- Fixed 'setFocus: from… not registered' JavaScript client
error, causing the user interface to stop responding until the document
is reloaded.
This was caused by invoking DLG SET "Dialog.do",1
and then opening a new Dialog. The new Dialog then failed to access
the previous Dialog's focus object.
- Fixed 'apiReceived op 24: invalid, not idle' JavaScript
client error, causing the user interface to stop responding until the
document is reloaded.
This was caused by a client-server race condition.
- Fixed 'BUG: elementsChanged no current Dialog' JavaScript
client error.
This was caused by pressing the context menu mouse button while
the Dialog is not interactive.
- MenuBar: Fixed setting visible=0 and sensitive=0
had no effect.
- TabBox: Fixed tab not implicitly selected when focus is set to
a contained object.
- TabBox: Fixed sensitive=0 tabs were not displayed.
- TabBox: Fixed setting selectedtab had no effect if the related
GroupBox object id is modified afterwards.
- TabBox: Fixed setting selectedtab could have unexpected effects
when tabs are deleted afterwards.
- Application development and debugging: When a
DLG listener is connected,
the eloqwebd2 user agent was not
marked as authenticated.
As a consequence, the eloqwebd2 internal web
server returned a 403 Forbidden status for an URI configured
with GroupList = @auth.
- eloqwebd2.uri: Fixed ContentType:application/octet-stream
HTTP response header unexpectedly returned when configured
Path refers to a file.
- eloqwebd2.mime: Specifying media type parameters, for example
"charset", was not possible. Parameters were unexpectedly truncated.
For example: text/markdown; charset=UTF-8
Truncated to: text/markdown;
|
|