BBjCookie::setDomain

Description

In BBj 12.00 and higher, this method sets the domain within which this cookie should be presented.

The form of the domain name is specified by RFC 2109. A domain name begins with a dot (.foo.com) and means that the cookie is visible to servers in a specified Domain Name System (DNS) zone (for example, www.foo.com, but not a.b.foo.com). By default, cookies are only returned to the server that sent them.

Syntax

Return Value Method
void setDomain(string domain)

Parameters

Parameter

Description

domain A String containing the domain name within which this cookie is visible; form is according to RFC 2109.

Return Value

None.

Example

CLASS PUBLIC CookieSettingExampleServlet 
    method public void service(BBxServletContext context!) 
       
        request! = context!.getRequest()
        response! = context!.getResponse()
        session! = request!.getSession()

        s! = response!.getOutputStream()
        
REM     Initialize the settings going into the cookie        
        domain! = request!.getServerName()
        maxAge! = 1000
        path! = request!.getRequestURI()
        isSecure! = request!.isSecure()
        value! = "Example Value"
        comment! = "This is an example cookie"
        
REM     Create the cookie
        cookie! = response!.createCookie("SampleCookie")
        cookie!.setDomain(domain!)
        cookie!.setMaxAge(maxAge!)
        cookie!.setPath(path!)
        cookie!.setSecure(isSecure!)
        cookie!.setHttpOnly(!isSecure!)
        cookie!.setValue(value!)
        cookie!.setComment(comment!)
        
REM     Add cookie to response to be set on client        
        response!.addCookie(cookie!)
        
        
        s!.write("<html><body>")
        s!.write("<h1>The following cookie was successfully added</h1>")
        s!.write("The BBjCookie '" + cookie!.getName() + "' ")
        s!.write("has the value '" + cookie!.getValue() + "' ")
        
        domain! = cookie!.getDomain()
        IF domain! = NULL() THEN
            domain! = "null"
        ENDIF
        
        path! = cookie!.getPath()
        IF path! = NULL() THEN
            path! = "null"
        ENDIF
        
        s!.write("for the domain " + domain! + " ")
        s!.write("at path " + path! + " ")
        s!.write("will expire in " + Integer.toString(cookie!.getMaxAge()) + " seconds ")
        
        IF cookie!.getSecure() THEN
            s!.write(" for HTTPS protocol ")
        ENDIF

        IF cookie!.isHttpOnly() THEN
            s!.write(" only for HTTP protocol ")
        ENDIF
        
        s!.write("is version " + Integer.toString(cookie!.getVersion()) + " ")
        
        IF cookie!.getComment() <> NULL() THEN
            s!.write("comment '" + cookie!.getComment() + "' ")
        ENDIF
        s!.write("</body></html>")
    METHODEND
CLASSEND

See Also

BBjAPI

BBxServletContext

BBxServletResponse

BBxServletRequest

BBjCookie