So first you ignore my advice, then it doesn't work <g>.
So let's cover the bases;
As Alex pointed out ParseHTML is prototyped as;
ParseHTML PROCEDURE (*String p_Data, long p_DataStart=1, long p_DataEnd=0, Byte p_Header=NET:SendHeader) ,VIRTUAL
Notice that p_data takes a *String, not a String.
st.GetValue() returns a string, not a *string, so you can't use it directly in the line.
what you can do is;
p_web.ParseHTML(st.Value,1,packetlen,Net:NoHeader)
which passes the actual string property to ParseHTML, rather than the result of a method call.
cunningly though SendJSON is prototyped as
NetWebServerWorker.SendJSON Procedure(String p_JSON)
so in this case you can (and I think should) call
p_web.sendJSON(st.GetValue())
cheers
Bruce