Dart: Prześlij formularz AJAX

Uwaga: nie jestem zainteresowany używaniem do tego polimeru; Chcę użyć „czystej” Dart!

Próbuję zbudować prosty ekran logowania dla mojej aplikacji Dart i mam trudności z uzyskaniem dwóch zmiennych formularza (email ipassword) do POST po stronie serwera:

Oto mój główny plik HTML (myapp.html):

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Sign in</title>
        <link rel="stylesheet" href="assets/myapp/myapp/myapp.css">
        <link rel="stylesheet" href="assets/myapp/bootstrap/css/bootstrap.min.css">
    </head>
    <body>
        <div class="container">
            <form id="signinForm" method="POST" class="form-signin">
                <h2 class="form-signin-heading">Please sign in</h2>
                <input type="text" class="input-block-level" name="email" placeholder="Email address">
                <input type="password" class="input-block-level" name="password" placeholder="Password">
                <button class="btn btn-large btn-primary" id="signinBtn" type="submit">Sign in</button>
            </form>
        </div>
        <script type="application/dart" src="myapp.dart"></script>
        <script src="packages/browser/dart.js"></script>
    </body>
</html>

Oto mój główny plik Dart (myapp.dart):

import 'dart:html';

void main() {
    querySelector("#signinForm")
        ..onClick.listen(handle);
}

void handle(MouseEvent mouseEvent) {
    mouseEvent.preventDefault();

    FormElement formElement = mouseEvent.target as FormElement;

    var url = "http://localhost:8080/myapp/signinService";

    var request = HttpRequest.request(
        url,
        method: formElement.method,
        sendData: new FormData(formElement)
    ).then(onDataLoaded);
}

void onDataLoaded(HttpRequest req) {
    String response = req.responseText;
    if(response == 1)
        window.alert("You are signed in!");
    else
        window.alert("Sign in failed. Check credentials.");
}

Gdy uruchamiam to w przeglądarce, pojawia się ekran logowania, ale gdy klikam przycisk logowania, nic się nie dzieje, a Firebug rzuca kilka błędów na skompilowanym, zaciemnionym, zminimalizowanym JavaScript:

: CastError: Wartość rzutu typu qE na niekompatybilny typ Yu

Chcę, aby było to żądanie AJAX, aby użytkownik to zrobiłnie musisz przeładować stronę (intencją jest tutaj aplikacja na jedną stronę).

Jakieś pomysły, co się tutaj dzieje? Jestem prawie w 100% pewien, że problem nie jest po stronie serwera, więc na razie pomijam publikowanie kodu serwera. Ale w razie potrzeby zaktualizuję moje pytanie kodem serwera.

questionAnswers(1)

yourAnswerToTheQuestion